summaryrefslogtreecommitdiff
path: root/src/plugins/diffeditor/diffeditorplugin.cpp
diff options
context:
space:
mode:
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