summaryrefslogtreecommitdiff
path: root/src/plugins/diffeditor/diffeditorplugin.cpp
diff options
context:
space:
mode:
authorjkobus <jaroslaw.kobus@digia.com>2013-05-23 13:36:27 +0200
committerJarek Kobus <jaroslaw.kobus@digia.com>2013-05-24 14:14:06 +0200
commit2ddb726dd537a1505b8d0208fe638cc759a68c38 (patch)
tree61e01f344c4d0ef588ab69adc2431e565ec2ee38 /src/plugins/diffeditor/diffeditorplugin.cpp
parent13504eec18274a7e4e74486b69506a7fa2422bc8 (diff)
downloadqt-creator-2ddb726dd537a1505b8d0208fe638cc759a68c38.tar.gz
Add file list combobox to diff editor
Change-Id: I2a40207ed3c4a5c07ba544d681aed6649a0b1a11 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/plugins/diffeditor/diffeditorplugin.cpp')
-rw-r--r--src/plugins/diffeditor/diffeditorplugin.cpp45
1 files changed, 21 insertions, 24 deletions
diff --git a/src/plugins/diffeditor/diffeditorplugin.cpp b/src/plugins/diffeditor/diffeditorplugin.cpp
index a4a1429539..2fe3618574 100644
--- a/src/plugins/diffeditor/diffeditorplugin.cpp
+++ b/src/plugins/diffeditor/diffeditorplugin.cpp
@@ -136,31 +136,28 @@ void DiffEditorPlugin::diff()
const Core::Id editorId = Constants::DIFF_EDITOR_ID;
//: Editor title
QString title = tr("Diff \"%1\", \"%2\"").arg(fileName1).arg(fileName2);
- Core::IEditor *outputEditor = Core::EditorManager::openEditorWithContents(editorId, &title, QString());
- Core::EditorManager::activateEditor(outputEditor, Core::EditorManager::ModeSwitch);
-
- DiffEditorWidget *editorWidget = getDiffEditorWidget(outputEditor);
- if (editorWidget) {
- const QString text1 = getFileContents(fileName1, editorWidget->codec());
- const QString text2 = getFileContents(fileName2, editorWidget->codec());
-
- DiffEditorWidget::DiffFilesContents dfc;
- dfc.leftFileInfo = fileName1;
- dfc.leftText = text1;
- dfc.rightFileInfo = fileName2;
- dfc.rightText = text2;
- QList<DiffEditorWidget::DiffFilesContents> list;
- list.append(dfc);
-
- editorWidget->setDiff(list);
- }
-}
+ DiffEditorEditable *editorEditable = qobject_cast<DiffEditorEditable *>
+ (Core::EditorManager::openEditorWithContents(editorId, &title, QString()));
-DiffEditorWidget *DiffEditorPlugin::getDiffEditorWidget(const Core::IEditor *editor) const
-{
- if (const DiffEditorEditable *de = qobject_cast<const DiffEditorEditable *>(editor))
- return de->editorWidget();
- return 0;
+ if (!editorEditable)
+ return;
+
+ Core::EditorManager::activateEditor(editorEditable, Core::EditorManager::ModeSwitch);
+
+ DiffEditorWidget *editorWidget = editorEditable->editorWidget();
+
+ const QString text1 = getFileContents(fileName1, editorWidget->codec());
+ const QString text2 = getFileContents(fileName2, editorWidget->codec());
+
+ DiffEditorWidget::DiffFilesContents dfc;
+ dfc.leftFileInfo = fileName1;
+ dfc.leftText = text1;
+ dfc.rightFileInfo = fileName2;
+ dfc.rightText = text2;
+ QList<DiffEditorWidget::DiffFilesContents> list;
+ list.append(dfc);
+
+ editorEditable->setDiff(list);
}
QString DiffEditorPlugin::getFileContents(const QString &fileName, QTextCodec *codec) const