aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@digia.com>2013-05-31 12:52:53 +0200
committerEike Ziller <eike.ziller@digia.com>2013-06-05 09:43:14 +0200
commit7c8db79817ed436176f6055b5c6f8ccf6df16c4c (patch)
tree28c65055a97c872468055db6e96fb51f70e83f1d
parentf99ce422b475c000e1bbdadf13da232dd54d9cca (diff)
Switch less often to edit mode
This change * Removes IMode::type, ModeManager::activateModeType, and IEditor::preferredModeType, and adds IEditor::isDesignModePreferred instead * Adapts the mode switching code in EditorManager to handle multiple windows, for example switching to edit mode should only happen if the editor/view is in the main window. Otherwise the editor window should be raised and focused * Renames EditorManager::NoActivate --> DoNotChangeCurrentEditor * Reverts the EditorManager::ModeSwitch logic to switch mode or make the current editor visible by default, introducing DoNotMakeVisible flag instead * Fixes a few instances where EditorManager::ModeSwitch should have been used One non-trivial problem left: If you open a .ui file and switch to an external editor window, edit mode is activated, because the current editor no longer is a .ui file, which means that the design mode gets deactivated. Change-Id: I76c5c2391eb4090143b778fb103acff3a5a1ff41 Reviewed-by: David Schulz <david.schulz@digia.com>
-rw-r--r--src/plugins/analyzerbase/analyzermanager.cpp1
-rw-r--r--src/plugins/bazaar/bazaarplugin.cpp4
-rw-r--r--src/plugins/clearcase/clearcaseplugin.cpp14
-rw-r--r--src/plugins/coreplugin/basefilewizard.cpp2
-rw-r--r--src/plugins/coreplugin/designmode.cpp1
-rw-r--r--src/plugins/coreplugin/documentmanager.cpp2
-rw-r--r--src/plugins/coreplugin/editmode.cpp1
-rw-r--r--src/plugins/coreplugin/editormanager/editormanager.cpp55
-rw-r--r--src/plugins/coreplugin/editormanager/editormanager.h5
-rw-r--r--src/plugins/coreplugin/editormanager/editorview.cpp12
-rw-r--r--src/plugins/coreplugin/editormanager/ieditor.h2
-rw-r--r--src/plugins/coreplugin/editormanager/openeditorsview.cpp2
-rw-r--r--src/plugins/coreplugin/editormanager/openeditorswindow.cpp5
-rw-r--r--src/plugins/coreplugin/editortoolbar.cpp2
-rw-r--r--src/plugins/coreplugin/imode.h3
-rw-r--r--src/plugins/coreplugin/mainwindow.cpp6
-rw-r--r--src/plugins/coreplugin/modemanager.cpp23
-rw-r--r--src/plugins/coreplugin/modemanager.h1
-rw-r--r--src/plugins/cpaster/cpasterplugin.cpp2
-rw-r--r--src/plugins/cppeditor/cppeditor.cpp2
-rw-r--r--src/plugins/cpptools/cppcurrentdocumentfilter.cpp3
-rw-r--r--src/plugins/cpptools/cppfilesettingspage.cpp3
-rw-r--r--src/plugins/cpptools/cppfindreferences.cpp7
-rw-r--r--src/plugins/cpptools/cpplocatorfilter.cpp3
-rw-r--r--src/plugins/cpptools/cpptoolsplugin.cpp3
-rw-r--r--src/plugins/cvs/cvsplugin.cpp13
-rw-r--r--src/plugins/debugger/debuggerplugin.cpp1
-rw-r--r--src/plugins/debugger/qml/qmlinspectoradapter.cpp3
-rw-r--r--src/plugins/designer/formeditorw.cpp2
-rw-r--r--src/plugins/designer/formwindoweditor.cpp4
-rw-r--r--src/plugins/designer/formwindoweditor.h2
-rw-r--r--src/plugins/designer/qtcreatorintegration.cpp4
-rw-r--r--src/plugins/diffeditor/diffeditorplugin.cpp2
-rw-r--r--src/plugins/diffeditor/diffeditorwidget.cpp2
-rw-r--r--src/plugins/git/gitclient.cpp8
-rw-r--r--src/plugins/git/gitplugin.cpp3
-rw-r--r--src/plugins/helloworld/helloworldplugin.cpp1
-rw-r--r--src/plugins/locator/basefilefilter.cpp2
-rw-r--r--src/plugins/locator/filesystemfilter.cpp2
-rw-r--r--src/plugins/locator/opendocumentsfilter.cpp2
-rw-r--r--src/plugins/madde/maemopackagecreationwidget.cpp3
-rw-r--r--src/plugins/mercurial/mercurialplugin.cpp3
-rw-r--r--src/plugins/perforce/perforceplugin.cpp7
-rw-r--r--src/plugins/projectexplorer/foldernavigationwidget.cpp2
-rw-r--r--src/plugins/projectexplorer/projectexplorer.cpp3
-rw-r--r--src/plugins/projectexplorer/projecttreewidget.cpp2
-rw-r--r--src/plugins/qmldesigner/components/formeditor/formeditorcrumblebar.cpp3
-rw-r--r--src/plugins/qmldesigner/components/integration/designdocument.cpp2
-rw-r--r--src/plugins/qmldesigner/components/navigator/navigatorview.cpp3
-rw-r--r--src/plugins/qmldesigner/designersettings.cpp10
-rw-r--r--src/plugins/qmldesigner/designersettings.h1
-rw-r--r--src/plugins/qmldesigner/designmodewidget.cpp6
-rw-r--r--src/plugins/qmldesigner/qmldesignerconstants.h2
-rw-r--r--src/plugins/qmljseditor/qmljseditoreditable.cpp39
-rw-r--r--src/plugins/qmljseditor/qmljseditoreditable.h2
-rw-r--r--src/plugins/qmljseditor/qmljsfindreferences.cpp6
-rw-r--r--src/plugins/qmljstools/qmljsfunctionfilter.cpp3
-rw-r--r--src/plugins/qt4projectmanager/qt4projectmanager.cpp3
-rw-r--r--src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp2
-rw-r--r--src/plugins/qtsupport/gettingstartedwelcomepage.cpp2
-rw-r--r--src/plugins/qtsupport/qtoutputformatter.cpp2
-rw-r--r--src/plugins/subversion/subversionplugin.cpp13
-rw-r--r--src/plugins/texteditor/basefilefind.cpp7
-rw-r--r--src/plugins/texteditor/basetexteditor.cpp3
-rw-r--r--src/plugins/texteditor/linenumberfilter.cpp4
-rw-r--r--src/plugins/texteditor/refactoringchanges.cpp2
-rw-r--r--src/plugins/texteditor/texteditorplugin.cpp2
-rw-r--r--src/plugins/vcsbase/cleandialog.cpp2
-rw-r--r--src/plugins/vcsbase/vcsbaseclient.cpp2
-rw-r--r--src/plugins/vcsbase/vcsbaseeditor.cpp2
-rw-r--r--src/plugins/vcsbase/vcsbaseoutputwindow.cpp2
-rw-r--r--src/plugins/vcsbase/vcsbaseplugin.cpp4
-rw-r--r--src/plugins/vcsbase/vcsbasesubmiteditor.cpp3
-rw-r--r--src/plugins/welcome/welcomeplugin.cpp1
74 files changed, 135 insertions, 233 deletions
diff --git a/src/plugins/analyzerbase/analyzermanager.cpp b/src/plugins/analyzerbase/analyzermanager.cpp
index 919b5b2a10..5101e20854 100644
--- a/src/plugins/analyzerbase/analyzermanager.cpp
+++ b/src/plugins/analyzerbase/analyzermanager.cpp
@@ -102,7 +102,6 @@ public:
setIcon(QIcon(QLatin1String(":/images/analyzer_mode.png")));
setPriority(P_MODE_ANALYZE);
setId(MODE_ANALYZE);
- setType(MODE_EDIT_TYPE);
}
~AnalyzerMode()
diff --git a/src/plugins/bazaar/bazaarplugin.cpp b/src/plugins/bazaar/bazaarplugin.cpp
index ebf104bc97..3614e74529 100644
--- a/src/plugins/bazaar/bazaarplugin.cpp
+++ b/src/plugins/bazaar/bazaarplugin.cpp
@@ -540,9 +540,7 @@ void BazaarPlugin::showCommitWidget(const QList<VcsBase::VcsBaseClient::StatusIt
return;
}
- Core::IEditor *editor = Core::EditorManager::openEditor(saver.fileName(),
- Constants::COMMIT_ID,
- Core::EditorManager::ModeSwitch);
+ Core::IEditor *editor = Core::EditorManager::openEditor(saver.fileName(), Constants::COMMIT_ID);
if (!editor) {
outputWindow->appendError(tr("Unable to create an editor for the commit."));
return;
diff --git a/src/plugins/clearcase/clearcaseplugin.cpp b/src/plugins/clearcase/clearcaseplugin.cpp
index d7614bf67e..ee881e3e4b 100644
--- a/src/plugins/clearcase/clearcaseplugin.cpp
+++ b/src/plugins/clearcase/clearcaseplugin.cpp
@@ -687,9 +687,7 @@ QString ClearCasePlugin::ccGetFileActivity(const QString &workingDir, const QStr
ClearCaseSubmitEditor *ClearCasePlugin::openClearCaseSubmitEditor(const QString &fileName, bool isUcm)
{
Core::IEditor *editor =
- Core::EditorManager::openEditor(fileName,
- Constants::CLEARCASECHECKINEDITOR_ID,
- Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(fileName, Constants::CLEARCASECHECKINEDITOR_ID);
ClearCaseSubmitEditor *submitEditor = qobject_cast<ClearCaseSubmitEditor*>(editor);
QTC_CHECK(submitEditor);
submitEditor->registerActions(m_submitUndoAction, m_submitRedoAction, m_checkInSelectedAction, m_checkInDiffAction);
@@ -932,7 +930,7 @@ void ClearCasePlugin::ccDiffWithPred(const QString &workingDir, const QStringLis
// Show in the same editor if diff has been executed before
if (Core::IEditor *existingEditor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
existingEditor->createNew(result);
- Core::EditorManager::activateEditor(existingEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(existingEditor);
setDiffBaseDirectory(existingEditor, workingDir);
return;
}
@@ -1192,7 +1190,7 @@ void ClearCasePlugin::history(const QString &workingDir,
const QString tag = VcsBase::VcsBaseEditorWidget::editorTag(VcsBase::LogOutput, workingDir, files);
if (Core::IEditor *editor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(response.stdOut);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("cc history %1").arg(id);
const QString source = VcsBase::VcsBaseEditorWidget::getSource(workingDir, files);
@@ -1305,7 +1303,7 @@ void ClearCasePlugin::vcsAnnotate(const QString &workingDir, const QString &file
if (Core::IEditor *editor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(res);
VcsBase::VcsBaseEditorWidget::gotoLineOfEditor(editor, lineNumber);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("cc annotate %1").arg(id);
Core::IEditor *newEditor = showOutputInEditor(title, res, VcsBase::AnnotateOutput, source, codec);
@@ -1341,7 +1339,7 @@ void ClearCasePlugin::describe(const QString &source, const QString &changeNr)
const QString tag = VcsBase::VcsBaseEditorWidget::editorTag(VcsBase::DiffOutput, source, QStringList(), changeNr);
if (Core::IEditor *editor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(description);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("cc describe %1").arg(id);
Core::IEditor *newEditor = showOutputInEditor(title, description, VcsBase::DiffOutput, source, codec);
@@ -1413,7 +1411,7 @@ Core::IEditor *ClearCasePlugin::showOutputInEditor(const QString& title, const Q
if (codec)
e->setCodec(codec);
Core::IEditor *ie = e->editor();
- Core::EditorManager::activateEditor(ie, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(ie);
return ie;
}
diff --git a/src/plugins/coreplugin/basefilewizard.cpp b/src/plugins/coreplugin/basefilewizard.cpp
index cd6bbc1441..d0c9d91718 100644
--- a/src/plugins/coreplugin/basefilewizard.cpp
+++ b/src/plugins/coreplugin/basefilewizard.cpp
@@ -650,7 +650,7 @@ bool BaseFileWizard::postGenerateOpenEditors(const GeneratedFiles &l, QString *e
{
foreach (const Core::GeneratedFile &file, l) {
if (file.attributes() & Core::GeneratedFile::OpenEditorAttribute) {
- if (!Core::EditorManager::openEditor(file.path(), file.editorId(), Core::EditorManager::ModeSwitch )) {
+ if (!Core::EditorManager::openEditor(file.path(), file.editorId())) {
if (errorMessage)
*errorMessage = tr("Failed to open an editor for '%1'.").arg(QDir::toNativeSeparators(file.path()));
return false;
diff --git a/src/plugins/coreplugin/designmode.cpp b/src/plugins/coreplugin/designmode.cpp
index 47f1734954..a591d995fc 100644
--- a/src/plugins/coreplugin/designmode.cpp
+++ b/src/plugins/coreplugin/designmode.cpp
@@ -120,7 +120,6 @@ DesignMode::DesignMode()
setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Design.png")));
setPriority(Constants::P_MODE_DESIGN);
setId(Constants::MODE_DESIGN);
- setType(Constants::MODE_DESIGN_TYPE);
ExtensionSystem::PluginManager::addObject(d->m_coreListener);
diff --git a/src/plugins/coreplugin/documentmanager.cpp b/src/plugins/coreplugin/documentmanager.cpp
index cee77d0225..7229797394 100644
--- a/src/plugins/coreplugin/documentmanager.cpp
+++ b/src/plugins/coreplugin/documentmanager.cpp
@@ -1382,7 +1382,7 @@ void DocumentManager::executeOpenWithMenuAction(QAction *action)
return;
}
- EditorManager::openEditor(entry.fileName, entry.editorFactory->id(), EditorManager::ModeSwitch);
+ EditorManager::openEditor(entry.fileName, entry.editorFactory->id());
return;
}
if (entry.externalEditor)
diff --git a/src/plugins/coreplugin/editmode.cpp b/src/plugins/coreplugin/editmode.cpp
index 77ddd25ae7..1a6072e978 100644
--- a/src/plugins/coreplugin/editmode.cpp
+++ b/src/plugins/coreplugin/editmode.cpp
@@ -55,7 +55,6 @@ EditMode::EditMode() :
setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Edit.png")));
setPriority(Constants::P_MODE_EDIT);
setId(Constants::MODE_EDIT);
- setType(Constants::MODE_EDIT_TYPE);
m_rightSplitWidgetLayout->setSpacing(0);
m_rightSplitWidgetLayout->setMargin(0);
diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 4101fba001..47f64a2d60 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -698,15 +698,15 @@ void EditorManager::splitNewWindow(Internal::EditorView *view)
context->setContext(Context(Constants::C_EDITORMANAGER));
context->setWidget(splitter);
ICore::addContextObject(context);
+ m_instance->d->m_root.append(splitter);
+ m_instance->d->m_rootContext.append(context);
+ connect(splitter, SIGNAL(destroyed(QObject*)), m_instance, SLOT(rootDestroyed(QObject*)));
splitter->show();
ICore::raiseWindow(splitter);
if (newEditor)
m_instance->activateEditor(splitter->view(), newEditor, IgnoreNavigationHistory);
else
splitter->view()->setFocus();
- m_instance->d->m_root.append(splitter);
- m_instance->d->m_rootContext.append(context);
- connect(splitter, SIGNAL(destroyed(QObject*)), m_instance, SLOT(rootDestroyed(QObject*)));
m_instance->updateActions();
}
@@ -1049,15 +1049,15 @@ bool EditorManager::closeEditors(const QList<IEditor*> &editorsToClose, bool ask
if (!newCurrent)
newCurrent = pickUnusedEditor();
if (newCurrent) {
- activateEditor(view, newCurrent, NoActivate);
+ activateEditor(view, newCurrent, DoNotChangeCurrentEditor);
} else {
QModelIndex idx = d->m_editorModel->firstRestoredEditor();
if (idx.isValid()) {
- activateEditorForIndex(view, idx, NoActivate);
+ activateEditorForIndex(view, idx, DoNotChangeCurrentEditor);
} else {
const QList<IEditor *> editors = d->m_editorModel->editors();
if (!editors.isEmpty())
- activateEditor(view, editors.last(), NoActivate);
+ activateEditor(view, editors.last(), DoNotChangeCurrentEditor);
}
}
}
@@ -1112,11 +1112,11 @@ void EditorManager::closeDuplicate(Core::IEditor *editor)
if (!newCurrent)
newCurrent = pickUnusedEditor();
if (newCurrent) {
- activateEditor(view, newCurrent, NoActivate);
+ activateEditor(view, newCurrent, DoNotChangeCurrentEditor);
} else {
QModelIndex idx = d->m_editorModel->firstRestoredEditor();
if (idx.isValid())
- activateEditorForIndex(view, idx, NoActivate);
+ activateEditorForIndex(view, idx, DoNotChangeCurrentEditor);
}
}
@@ -1221,13 +1221,22 @@ Core::IEditor *EditorManager::activateEditor(Core::Internal::EditorView *view, C
editor = placeEditor(view, editor);
- if (!(flags & NoActivate)) {
+ if (!(flags & DoNotChangeCurrentEditor)) {
setCurrentEditor(editor, (flags & IgnoreNavigationHistory));
- if (flags & ModeSwitch)
- switchToPreferedMode();
- if (isVisible()) {
- editor->widget()->setFocus();
- ICore::raiseWindow(editor->widget());
+ if (!(flags & DoNotMakeVisible)) {
+ // switch to design mode?
+ if (editor->isDesignModePreferred()) {
+ ModeManager::activateMode(Core::Constants::MODE_DESIGN);
+ ModeManager::setFocusToCurrentMode();
+ } else {
+ int rootIndex;
+ findRoot(view, &rootIndex);
+ if (rootIndex == 0) // main window --> we might need to switch mode
+ if (!editor->widget()->isVisible())
+ ModeManager::activateMode(Core::Constants::MODE_EDIT);
+ editor->widget()->setFocus();
+ ICore::raiseWindow(editor->widget());
+ }
}
}
return editor;
@@ -1572,22 +1581,6 @@ QStringList EditorManager::getOpenFileNames() const
}
-/// Empty mode == figure out the correct mode from the editor
-/// forcePrefered = true, switch to the mode even if the editor is visible in another mode
-/// forcePrefered = false, only switch if it is not visible
-void EditorManager::switchToPreferedMode()
-{
- Id preferedMode;
- // Figure out preferred mode for editor
- if (d->m_currentEditor)
- preferedMode = d->m_currentEditor->preferredModeType();
-
- if (!preferedMode.isValid())
- preferedMode = Id(Constants::MODE_EDIT_TYPE);
-
- ModeManager::activateModeType(preferedMode);
-}
-
IEditor *EditorManager::openEditorWithContents(const Id &editorId,
QString *titlePattern,
const QString &contents)
@@ -2191,7 +2184,7 @@ bool EditorManager::restoreState(const QByteArray &state)
continue;
QFileInfo rfi(autoSaveName(fileName));
if (rfi.exists() && fi.lastModified() < rfi.lastModified())
- openEditor(fileName, id);
+ openEditor(fileName, id, DoNotMakeVisible);
else
d->m_editorModel->addRestoredEditor(fileName, displayName, id);
}
diff --git a/src/plugins/coreplugin/editormanager/editormanager.h b/src/plugins/coreplugin/editormanager/editormanager.h
index b3bae535e4..38cb29cf88 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.h
+++ b/src/plugins/coreplugin/editormanager/editormanager.h
@@ -107,9 +107,9 @@ public:
static EditorToolBar *createToolBar(QWidget *parent = 0);
enum OpenEditorFlag {
- NoActivate = 1,
+ DoNotChangeCurrentEditor = 1,
IgnoreNavigationHistory = 2,
- ModeSwitch = 4,
+ DoNotMakeVisible = 4,
CanContainLineNumber = 8,
OpenInOtherSplit = 16
};
@@ -278,7 +278,6 @@ private:
static void splitNewWindow(Internal::EditorView *view);
IEditor *pickUnusedEditor() const;
void addDocumentToRecentFiles(IDocument *document);
- void switchToPreferedMode();
void updateAutoSave();
void setCloseSplitEnabled(Internal::SplitterOrView *splitterOrView, bool enable);
void updateMakeWritableWarning();
diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp
index 30cbb9c023..6bd6009b3d 100644
--- a/src/plugins/coreplugin/editormanager/editorview.cpp
+++ b/src/plugins/coreplugin/editormanager/editorview.cpp
@@ -299,7 +299,7 @@ IEditor *EditorView::currentEditor() const
void EditorView::listSelectionActivated(int index)
{
QAbstractItemModel *model = EditorManager::instance()->openedEditorsModel();
- EditorManager::instance()->activateEditorForIndex(this, model->index(index, 0), Core::EditorManager::ModeSwitch);
+ EditorManager::instance()->activateEditorForIndex(this, model->index(index, 0));
}
void EditorView::splitHorizontally()
@@ -465,11 +465,11 @@ void EditorView::goBackInNavigationHistory()
IEditor *editor = 0;
if (location.document) {
editor = em->activateEditorForDocument(this, location.document,
- EditorManager::IgnoreNavigationHistory | EditorManager::ModeSwitch);
+ EditorManager::IgnoreNavigationHistory);
}
if (!editor) {
editor = em->openEditor(this, location.fileName, location.id,
- EditorManager::IgnoreNavigationHistory | EditorManager::ModeSwitch);
+ EditorManager::IgnoreNavigationHistory);
if (!editor) {
m_navigationHistory.removeAt(m_currentNavigationHistoryPosition);
continue;
@@ -492,7 +492,7 @@ void EditorView::goForwardInNavigationHistory()
IEditor *editor = 0;
if (location.document) {
editor = em->activateEditorForDocument(this, location.document,
- EditorManager::IgnoreNavigationHistory | EditorManager::ModeSwitch);
+ EditorManager::IgnoreNavigationHistory);
}
if (!editor) {
editor = em->openEditor(this, location.fileName, location.id, EditorManager::IgnoreNavigationHistory);
@@ -784,13 +784,13 @@ void SplitterOrView::restoreState(const QByteArray &state)
if (!QFile::exists(fileName))
return;
IEditor *e = em->openEditor(view(), fileName, Id::fromString(id), Core::EditorManager::IgnoreNavigationHistory
- | Core::EditorManager::NoActivate);
+ | Core::EditorManager::DoNotChangeCurrentEditor);
if (!e) {
QModelIndex idx = em->openedEditorsModel()->firstRestoredEditor();
if (idx.isValid())
em->activateEditorForIndex(view(), idx, Core::EditorManager::IgnoreNavigationHistory
- | Core::EditorManager::NoActivate);
+ | Core::EditorManager::DoNotChangeCurrentEditor);
}
if (e) {
diff --git a/src/plugins/coreplugin/editormanager/ieditor.h b/src/plugins/coreplugin/editormanager/ieditor.h
index d420313136..f2c64f7a9b 100644
--- a/src/plugins/coreplugin/editormanager/ieditor.h
+++ b/src/plugins/coreplugin/editormanager/ieditor.h
@@ -68,7 +68,7 @@ public:
virtual QWidget *toolBar() = 0;
- virtual Id preferredModeType() const { return Id(); }
+ virtual bool isDesignModePreferred() const { return false; }
signals:
void changed();
diff --git a/src/plugins/coreplugin/editormanager/openeditorsview.cpp b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
index 9a46246846..0b6dacba5b 100644
--- a/src/plugins/coreplugin/editormanager/openeditorsview.cpp
+++ b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
@@ -189,7 +189,7 @@ void OpenEditorsWidget::handleClicked(const QModelIndex &index)
void OpenEditorsWidget::activateEditor(const QModelIndex &index)
{
selectionModel()->select(index, QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows);
- EditorManager::instance()->activateEditorForIndex(index, EditorManager::ModeSwitch);
+ EditorManager::instance()->activateEditorForIndex(index);
}
void OpenEditorsWidget::closeEditor(const QModelIndex &index)
diff --git a/src/plugins/coreplugin/editormanager/openeditorswindow.cpp b/src/plugins/coreplugin/editormanager/openeditorswindow.cpp
index e7caecf711..1367c799a5 100644
--- a/src/plugins/coreplugin/editormanager/openeditorswindow.cpp
+++ b/src/plugins/coreplugin/editormanager/openeditorswindow.cpp
@@ -225,11 +225,10 @@ void OpenEditorsWindow::selectEditor(QTreeWidgetItem *item)
return;
if (IDocument *document = item->data(0, Qt::UserRole).value<IDocument*>()) {
EditorView *view = item->data(0, Qt::UserRole+1).value<EditorView*>();
- EditorManager::instance()->activateEditorForDocument(view, document, EditorManager::ModeSwitch);
+ EditorManager::instance()->activateEditorForDocument(view, document);
} else {
if (!EditorManager::openEditor(
- item->toolTip(0), item->data(0, Qt::UserRole+2).value<Core::Id>(),
- Core::EditorManager::ModeSwitch)) {
+ item->toolTip(0), item->data(0, Qt::UserRole+2).value<Core::Id>())) {
EditorManager::instance()->openedEditorsModel()->removeEditor(item->toolTip(0));
delete item;
}
diff --git a/src/plugins/coreplugin/editortoolbar.cpp b/src/plugins/coreplugin/editortoolbar.cpp
index 900f370e29..9fd7e2ca82 100644
--- a/src/plugins/coreplugin/editortoolbar.cpp
+++ b/src/plugins/coreplugin/editortoolbar.cpp
@@ -311,7 +311,7 @@ void EditorToolBar::changeActiveEditor(int row)
{
EditorManager *em = ICore::editorManager();
QAbstractItemModel *model = d->m_editorList->model();
- em->activateEditorForIndex(model->index(row, 0), EditorManager::ModeSwitch);
+ em->activateEditorForIndex(model->index(row, 0));
}
void EditorToolBar::listContextMenu(QPoint pos)
diff --git a/src/plugins/coreplugin/imode.h b/src/plugins/coreplugin/imode.h
index 232b0bf51f..ea9de058a2 100644
--- a/src/plugins/coreplugin/imode.h
+++ b/src/plugins/coreplugin/imode.h
@@ -49,7 +49,6 @@ public:
QIcon icon() const { return m_icon; }
int priority() const { return m_priority; }
Id id() const { return m_id; }
- Id type() const { return m_type; }
bool isEnabled() const;
void setEnabled(bool enabled);
@@ -57,7 +56,6 @@ public:
void setIcon(const QIcon &icon) { m_icon = icon; }
void setPriority(int priority) { m_priority = priority; }
void setId(Id id) { m_id = id; }
- void setType(Id type) { m_type = type; }
signals:
void enabledStateChanged(bool enabled);
@@ -67,7 +65,6 @@ private:
QIcon m_icon;
int m_priority;
Id m_id;
- Id m_type;
bool m_isEnabled;
};
diff --git a/src/plugins/coreplugin/mainwindow.cpp b/src/plugins/coreplugin/mainwindow.cpp
index 64f90435a6..6ae0d92318 100644
--- a/src/plugins/coreplugin/mainwindow.cpp
+++ b/src/plugins/coreplugin/mainwindow.cpp
@@ -861,8 +861,6 @@ IDocument *MainWindow::openFiles(const QStringList &fileNames, ICore::OpenFilesF
}
} else {
QFlags<EditorManager::OpenEditorFlag> emFlags;
- if (flags & ICore::SwitchMode)
- emFlags = EditorManager::ModeSwitch;
if (flags & ICore::CanContainLineNumbers)
emFlags |= EditorManager::CanContainLineNumber;
IEditor *editor = EditorManager::openEditor(absoluteFilePath, Id(), emFlags);
@@ -1005,7 +1003,7 @@ void MainWindow::openFileWith()
if (isExternal)
EditorManager::openExternalEditor(fileName, editorId);
else
- EditorManager::openEditor(fileName, editorId, Core::EditorManager::ModeSwitch);
+ EditorManager::openEditor(fileName, editorId);
}
}
@@ -1289,7 +1287,7 @@ void MainWindow::openRecentFile()
{
if (const QAction *action = qobject_cast<const QAction*>(sender())) {
const DocumentManager::RecentFile file = action->data().value<DocumentManager::RecentFile>();
- EditorManager::openEditor(file.first, file.second, EditorManager::ModeSwitch);
+ EditorManager::openEditor(file.first, file.second);
}
}
diff --git a/src/plugins/coreplugin/modemanager.cpp b/src/plugins/coreplugin/modemanager.cpp
index 894d3af057..b278f08c48 100644
--- a/src/plugins/coreplugin/modemanager.cpp
+++ b/src/plugins/coreplugin/modemanager.cpp
@@ -150,21 +150,6 @@ IMode *ModeManager::mode(Id id)
return 0;
}
-void ModeManager::activateModeType(Id type)
-{
- if (currentMode() && currentMode()->type() == type)
- return;
- int index = -1;
- for (int i = 0; i < d->m_modes.count(); ++i) {
- if (d->m_modes.at(i)->type() == type) {
- index = i;
- break;
- }
- }
- if (index != -1)
- d->m_modeStack->setCurrentIndex(index);
-}
-
void ModeManager::slotActivateMode(int id)
{
m_instance->activateMode(Id::fromUniqueIdentifier(id));
@@ -333,10 +318,10 @@ void ModeManager::setFocusToCurrentMode()
QWidget *widget = mode->widget();
if (widget) {
QWidget *focusWidget = widget->focusWidget();
- if (focusWidget)
- focusWidget->setFocus();
- else
- widget->setFocus();
+ if (!focusWidget)
+ focusWidget = widget;
+ focusWidget->setFocus();
+ ICore::raiseWindow(focusWidget);
}
}
diff --git a/src/plugins/coreplugin/modemanager.h b/src/plugins/coreplugin/modemanager.h
index caf17cada0..f053f98d9f 100644
--- a/src/plugins/coreplugin/modemanager.h
+++ b/src/plugins/coreplugin/modemanager.h
@@ -65,7 +65,6 @@ public:
static void addProjectSelector(QAction *action);
static void addWidget(QWidget *widget);
- static void activateModeType(Id type);
static void activateMode(Id id);
static void setFocusToCurrentMode();
static bool isModeSelectorVisible();
diff --git a/src/plugins/cpaster/cpasterplugin.cpp b/src/plugins/cpaster/cpasterplugin.cpp
index 2d1409c5e9..12102111d1 100644
--- a/src/plugins/cpaster/cpasterplugin.cpp
+++ b/src/plugins/cpaster/cpasterplugin.cpp
@@ -380,7 +380,7 @@ void CodepasterPlugin::finishFetch(const QString &titleDescription,
const QString fileName = saver.fileName();
m_fetchedSnippets.push_back(fileName);
// Open editor with title.
- Core::IEditor *editor = EditorManager::openEditor(fileName, Core::Id(), EditorManager::ModeSwitch);
+ Core::IEditor *editor = EditorManager::openEditor(fileName);
QTC_ASSERT(editor, return);
editor->setDisplayName(titleDescription);
}
diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp
index e49af606fa..ae80aa425e 100644
--- a/src/plugins/cppeditor/cppeditor.cpp
+++ b/src/plugins/cppeditor/cppeditor.cpp
@@ -1992,7 +1992,7 @@ bool CPPEditorWidget::openCppEditorAt(const Link &link, bool inNextSplit)
if (!link.hasValidTarget())
return false;
- Core::EditorManager::OpenEditorFlags flags = Core::EditorManager::ModeSwitch;
+ Core::EditorManager::OpenEditorFlags flags;
if (inNextSplit)
flags |= Core::EditorManager::OpenInOtherSplit;
return Core::EditorManager::openEditorAt(link.targetFileName,
diff --git a/src/plugins/cpptools/cppcurrentdocumentfilter.cpp b/src/plugins/cpptools/cppcurrentdocumentfilter.cpp
index b26042d0a6..e7aa07ac90 100644
--- a/src/plugins/cpptools/cppcurrentdocumentfilter.cpp
+++ b/src/plugins/cpptools/cppcurrentdocumentfilter.cpp
@@ -110,8 +110,7 @@ QList<Locator::FilterEntry> CppCurrentDocumentFilter::matchesFor(QFutureInterfac
void CppCurrentDocumentFilter::accept(Locator::FilterEntry selection) const
{
ModelItemInfo info = qvariant_cast<CppTools::ModelItemInfo>(selection.internalData);
- Core::EditorManager::openEditorAt(info.fileName, info.line, info.column,
- Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditorAt(info.fileName, info.line, info.column);
}
void CppCurrentDocumentFilter::refresh(QFutureInterface<void> &future)
diff --git a/src/plugins/cpptools/cppfilesettingspage.cpp b/src/plugins/cpptools/cppfilesettingspage.cpp
index c0ebe30a33..1c0c49904d 100644
--- a/src/plugins/cpptools/cppfilesettingspage.cpp
+++ b/src/plugins/cpptools/cppfilesettingspage.cpp
@@ -305,8 +305,7 @@ void CppFileSettingsWidget::slotEdit()
setLicenseTemplatePath(path);
}
// Edit (now) existing file with C++
- Core::EditorManager::openEditor(path, CppEditor::Constants::CPPEDITOR_ID,
- Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(path, CppEditor::Constants::CPPEDITOR_ID);
}
// --------------- CppFileSettingsPage
diff --git a/src/plugins/cpptools/cppfindreferences.cpp b/src/plugins/cpptools/cppfindreferences.cpp
index f27d92081d..bcf590c0d9 100644
--- a/src/plugins/cpptools/cppfindreferences.cpp
+++ b/src/plugins/cpptools/cppfindreferences.cpp
@@ -510,12 +510,9 @@ void CppFindReferences::openEditor(const Find::SearchResultItem &item)
{
if (item.path.size() > 0) {
Core::EditorManager::openEditorAt(QDir::fromNativeSeparators(item.path.first()),
- item.lineNumber, item.textMarkPos,
- Core::Id(),
- Core::EditorManager::ModeSwitch);
+ item.lineNumber, item.textMarkPos);
} else {
- Core::EditorManager::openEditor(QDir::fromNativeSeparators(item.text),
- Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(QDir::fromNativeSeparators(item.text));
}
}
diff --git a/src/plugins/cpptools/cpplocatorfilter.cpp b/src/plugins/cpptools/cpplocatorfilter.cpp
index e2ea80f0d2..0117a7d981 100644
--- a/src/plugins/cpptools/cpplocatorfilter.cpp
+++ b/src/plugins/cpptools/cpplocatorfilter.cpp
@@ -177,8 +177,7 @@ QList<Locator::FilterEntry> CppLocatorFilter::matchesFor(QFutureInterface<Locato
void CppLocatorFilter::accept(Locator::FilterEntry selection) const
{
ModelItemInfo info = qvariant_cast<CppTools::ModelItemInfo>(selection.internalData);
- Core::EditorManager::openEditorAt(info.fileName, info.line, info.column,
- Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditorAt(info.fileName, info.line, info.column);
}
void CppLocatorFilter::reset()
diff --git a/src/plugins/cpptools/cpptoolsplugin.cpp b/src/plugins/cpptools/cpptoolsplugin.cpp
index af579bb5a7..93b2a80482 100644
--- a/src/plugins/cpptools/cpptoolsplugin.cpp
+++ b/src/plugins/cpptools/cpptoolsplugin.cpp
@@ -164,8 +164,7 @@ void CppToolsPlugin::switchHeaderSourceInNextSplit()
QString otherFile = correspondingHeaderOrSource(
Core::EditorManager::currentEditor()->document()->fileName());
if (!otherFile.isEmpty())
- Core::EditorManager::openEditor(otherFile, Core::Id(), Core::EditorManager::OpenInOtherSplit
- | Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(otherFile, Core::Id(), Core::EditorManager::OpenInOtherSplit);
}
static QStringList findFilesInProject(const QString &name,
diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp
index b3cadb5e17..85ffd0a65c 100644
--- a/src/plugins/cvs/cvsplugin.cpp
+++ b/src/plugins/cvs/cvsplugin.cpp
@@ -592,7 +592,7 @@ void CvsPlugin::cvsDiff(const CvsDiffParameters &p)
const QString tag = VcsBaseEditorWidget::editorTag(DiffOutput, p.workingDir, p.files);
if (IEditor *existingEditor = VcsBaseEditorWidget::locateEditorByTag(tag)) {
existingEditor->createNew(output);
- EditorManager::activateEditor(existingEditor, EditorManager::ModeSwitch);
+ EditorManager::activateEditor(existingEditor);
setDiffBaseDirectory(existingEditor, p.workingDir);
return;
}
@@ -615,8 +615,7 @@ void CvsPlugin::cvsDiff(const CvsDiffParameters &p)
CvsSubmitEditor *CvsPlugin::openCVSSubmitEditor(const QString &fileName)
{
- IEditor *editor = EditorManager::openEditor(fileName, Constants::CVSCOMMITEDITOR_ID,
- EditorManager::ModeSwitch);
+ IEditor *editor = EditorManager::openEditor(fileName, Constants::CVSCOMMITEDITOR_ID);
CvsSubmitEditor *submitEditor = qobject_cast<CvsSubmitEditor*>(editor);
QTC_CHECK(submitEditor);
submitEditor->registerActions(m_submitUndoAction, m_submitRedoAction, m_submitCurrentLogAction, m_submitDiffAction);
@@ -861,7 +860,7 @@ void CvsPlugin::filelog(const QString &workingDir,
const QString tag = VcsBaseEditorWidget::editorTag(LogOutput, workingDir, files);
if (Core::IEditor *editor = VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(response.stdOut);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("cvs log %1").arg(id);
Core::IEditor *newEditor = showOutputInEditor(title, response.stdOut, LogOutput, source, codec);
@@ -1004,7 +1003,7 @@ void CvsPlugin::annotate(const QString &workingDir, const QString &file,
if (IEditor *editor = VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(response.stdOut);
VcsBaseEditorWidget::gotoLineOfEditor(editor, lineNumber);
- EditorManager::activateEditor(editor, EditorManager::ModeSwitch);
+ EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("cvs annotate %1").arg(id);
IEditor *newEditor = showOutputInEditor(title, response.stdOut, AnnotateOutput, source, codec);
@@ -1199,7 +1198,7 @@ bool CvsPlugin::describe(const QString &repositoryPath,
const QString commitId = entries.front().revisions.front().commitId;
if (IEditor *editor = VcsBaseEditorWidget::locateEditorByTag(commitId)) {
editor->createNew(output);
- EditorManager::activateEditor(editor, EditorManager::ModeSwitch);
+ EditorManager::activateEditor(editor);
setDiffBaseDirectory(editor, repositoryPath);
} else {
const QString title = QString::fromLatin1("cvs describe %1").arg(commitId);
@@ -1285,7 +1284,7 @@ IEditor *CvsPlugin::showOutputInEditor(const QString& title, const QString &outp
if (codec)
e->setCodec(codec);
IEditor *ie = e->editor();
- EditorManager::activateEditor(ie, EditorManager::ModeSwitch);
+ EditorManager::activateEditor(ie);
return ie;
}
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 4dca818a7c..aada6367c9 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -508,7 +508,6 @@ public:
setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Debug.png")));
setPriority(85);
setId(MODE_DEBUG);
- setType(CC::MODE_EDIT_TYPE);
}
~DebugMode()
diff --git a/src/plugins/debugger/qml/qmlinspectoradapter.cpp b/src/plugins/debugger/qml/qmlinspectoradapter.cpp
index b167f344cd..20d9219b6a 100644
--- a/src/plugins/debugger/qml/qmlinspectoradapter.cpp
+++ b/src/plugins/debugger/qml/qmlinspectoradapter.cpp
@@ -472,8 +472,7 @@ void QmlInspectorAdapter::jumpToObjectDefinitionInEditor(
{
const QString fileName = m_engine->toFileInProject(objSource.url());
- Core::EditorManager::openEditorAt(fileName, objSource.lineNumber(),
- 0, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditorAt(fileName, objSource.lineNumber());
if (debugId != -1 && debugId != m_currentSelectedDebugId) {
m_currentSelectedDebugId = debugId;
m_currentSelectedDebugName = agent()->displayName(debugId);
diff --git a/src/plugins/designer/formeditorw.cpp b/src/plugins/designer/formeditorw.cpp
index 5bedf6a41c..e435c95cdb 100644
--- a/src/plugins/designer/formeditorw.cpp
+++ b/src/plugins/designer/formeditorw.cpp
@@ -912,7 +912,7 @@ void FormEditorW::switchSourceForm()
{
const QString fileToOpen = otherFile();
if (!fileToOpen.isEmpty())
- Core::EditorManager::openEditor(fileToOpen, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(fileToOpen);
}
} // namespace Internal
diff --git a/src/plugins/designer/formwindoweditor.cpp b/src/plugins/designer/formwindoweditor.cpp
index 6ed794e19c..d6234089ee 100644
--- a/src/plugins/designer/formwindoweditor.cpp
+++ b/src/plugins/designer/formwindoweditor.cpp
@@ -259,9 +259,9 @@ TextEditor::PlainTextEditor *FormWindowEditor::textEditor()
return &d->m_textEditor;
}
-Core::Id FormWindowEditor::preferredModeType() const
+bool FormWindowEditor::isDesignModePreferred() const
{
- return Core::Id(Core::Constants::MODE_DESIGN_TYPE);
+ return true;
}
} // namespace Designer
diff --git a/src/plugins/designer/formwindoweditor.h b/src/plugins/designer/formwindoweditor.h
index 05f8f786fa..a04f417d16 100644
--- a/src/plugins/designer/formwindoweditor.h
+++ b/src/plugins/designer/formwindoweditor.h
@@ -81,7 +81,7 @@ public:
virtual QWidget *toolBar();
- virtual Core::Id preferredModeType() const;
+ virtual bool isDesignModePreferred() const;
// For uic code model support
QString contents() const;
diff --git a/src/plugins/designer/qtcreatorintegration.cpp b/src/plugins/designer/qtcreatorintegration.cpp
index 1fbb5a9d2c..956c1bc51d 100644
--- a/src/plugins/designer/qtcreatorintegration.cpp
+++ b/src/plugins/designer/qtcreatorintegration.cpp
@@ -270,7 +270,9 @@ static Document::Ptr findDefinition(Function *functionDeclaration, int *line)
static inline ITextEditor *editableAt(const QString &fileName, int line, int column)
{
- return qobject_cast<ITextEditor *>(Core::EditorManager::openEditorAt(fileName, line, column));
+ return qobject_cast<ITextEditor *>(Core::EditorManager::openEditorAt(fileName, line, column,
+ Core::Id(),
+ Core::EditorManager::DoNotMakeVisible));
}
static void addDeclaration(const Snapshot &snapshot,
diff --git a/src/plugins/diffeditor/diffeditorplugin.cpp b/src/plugins/diffeditor/diffeditorplugin.cpp
index 7df9f4bb4d..6ca9090f03 100644
--- a/src/plugins/diffeditor/diffeditorplugin.cpp
+++ b/src/plugins/diffeditor/diffeditorplugin.cpp
@@ -142,7 +142,7 @@ void DiffEditorPlugin::diff()
if (!editor)
return;
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
DiffEditorWidget *editorWidget = editor->editorWidget();
diff --git a/src/plugins/diffeditor/diffeditorwidget.cpp b/src/plugins/diffeditor/diffeditorwidget.cpp
index 31256f3f3a..4bce0b3466 100644
--- a/src/plugins/diffeditor/diffeditorwidget.cpp
+++ b/src/plugins/diffeditor/diffeditorwidget.cpp
@@ -374,7 +374,7 @@ void DiffViewEditorWidget::jumpToOriginalFile(const QTextCursor &cursor)
const QDir dir(m_workingDirectory);
const QString fileName = dir.absoluteFilePath(it.value().fileName);
- Core::IEditor *ed = Core::EditorManager::openEditor(fileName, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::IEditor *ed = Core::EditorManager::openEditor(fileName);
if (TextEditor::ITextEditor *editor = qobject_cast<TextEditor::ITextEditor *>(ed))
editor->gotoLine(lineNr, position);
}
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index 6596c2a413..45bcf40495 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -816,7 +816,7 @@ VcsBase::VcsBaseEditorWidget *GitClient::findExistingVCSEditor(const char *regis
return 0;
// Exists already
- Core::EditorManager::activateEditor(outputEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(outputEditor);
outputEditor->createNew(m_msgWait);
rc = VcsBase::VcsBaseEditorWidget::getVcsBaseEditor(outputEditor);
@@ -829,7 +829,7 @@ DiffEditor::DiffEditor *GitClient::findExistingOrOpenNewDiffEditor(const char *r
Core::IEditor *outputEditor = locateEditor(registerDynamicProperty, dynamicPropertyValue);
if (outputEditor) {
// Exists already
- Core::EditorManager::activateEditor(outputEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(outputEditor);
outputEditor->createNew(m_msgWait);
}
@@ -840,7 +840,7 @@ DiffEditor::DiffEditor *GitClient::findExistingOrOpenNewDiffEditor(const char *r
editor = qobject_cast<DiffEditor::DiffEditor *>(
Core::EditorManager::openEditorWithContents(editorId, &title, m_msgWait));
editor->document()->setProperty(registerDynamicProperty, dynamicPropertyValue);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch); // should probably go outside this block
+ Core::EditorManager::activateEditor(editor); // should probably go outside this block
}
return editor;
}
@@ -881,7 +881,7 @@ VcsBase::VcsBaseEditorWidget *GitClient::createVcsEditor(const Core::Id &id,
}
rc->setForceReadOnly(true);
- Core::EditorManager::activateEditor(outputEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(outputEditor);
if (configWidget)
rc->setConfigurationWidget(configWidget);
diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp
index 1f0cc2d097..1520e34ce2 100644
--- a/src/plugins/git/gitplugin.cpp
+++ b/src/plugins/git/gitplugin.cpp
@@ -975,8 +975,7 @@ void GitPlugin::updateVersionWarning()
Core::IEditor *GitPlugin::openSubmitEditor(const QString &fileName, const CommitData &cd)
{
- Core::IEditor *editor = Core::EditorManager::openEditor(fileName, Constants::GITSUBMITEDITOR_ID,
- Core::EditorManager::ModeSwitch);
+ Core::IEditor *editor = Core::EditorManager::openEditor(fileName, Constants::GITSUBMITEDITOR_ID);
GitSubmitEditor *submitEditor = qobject_cast<GitSubmitEditor*>(editor);
QTC_ASSERT(submitEditor, return 0);
setSubmitEditor(submitEditor);
diff --git a/src/plugins/helloworld/helloworldplugin.cpp b/src/plugins/helloworld/helloworldplugin.cpp
index 25d64aeb46..ea781f4026 100644
--- a/src/plugins/helloworld/helloworldplugin.cpp
+++ b/src/plugins/helloworld/helloworldplugin.cpp
@@ -60,7 +60,6 @@ public:
setIcon(QIcon());
setPriority(0);
setId("HelloWorld.HelloWorldMode");
- setType("HelloWorld.HelloWorldMode");
setContextHelpId(QString());
}
};
diff --git a/src/plugins/locator/basefilefilter.cpp b/src/plugins/locator/basefilefilter.cpp
index 14166a5bdf..8cd2a96e40 100644
--- a/src/plugins/locator/basefilefilter.cpp
+++ b/src/plugins/locator/basefilefilter.cpp
@@ -100,7 +100,7 @@ QList<FilterEntry> BaseFileFilter::matchesFor(QFutureInterface<Locator::FilterEn
void BaseFileFilter::accept(Locator::FilterEntry selection) const
{
EditorManager::openEditor(selection.internalData.toString(), Id(),
- EditorManager::ModeSwitch | EditorManager::CanContainLineNumber);
+ EditorManager::CanContainLineNumber);
}
void BaseFileFilter::generateFileNames()
diff --git a/src/plugins/locator/filesystemfilter.cpp b/src/plugins/locator/filesystemfilter.cpp
index 212d494b3d..4e7af5c91b 100644
--- a/src/plugins/locator/filesystemfilter.cpp
+++ b/src/plugins/locator/filesystemfilter.cpp
@@ -115,7 +115,7 @@ void FileSystemFilter::accept(FilterEntry selection) const
return;
}
EditorManager::openEditor(selection.internalData.toString(), Id(),
- EditorManager::ModeSwitch | EditorManager::CanContainLineNumber);
+ EditorManager::CanContainLineNumber);
}
bool FileSystemFilter::openConfigDialog(QWidget *parent, bool &needsRefresh)
diff --git a/src/plugins/locator/opendocumentsfilter.cpp b/src/plugins/locator/opendocumentsfilter.cpp
index f208a65ecf..c626b2de94 100644
--- a/src/plugins/locator/opendocumentsfilter.cpp
+++ b/src/plugins/locator/opendocumentsfilter.cpp
@@ -106,5 +106,5 @@ void OpenDocumentsFilter::refresh(QFutureInterface<void> &future)
void OpenDocumentsFilter::accept(FilterEntry selection) const
{
EditorManager::openEditor(selection.internalData.toString(), Id(),
- EditorManager::ModeSwitch | EditorManager::CanContainLineNumber);
+ EditorManager::CanContainLineNumber);
}
diff --git a/src/plugins/madde/maemopackagecreationwidget.cpp b/src/plugins/madde/maemopackagecreationwidget.cpp
index 0511985bb0..90a1661d25 100644
--- a/src/plugins/madde/maemopackagecreationwidget.cpp
+++ b/src/plugins/madde/maemopackagecreationwidget.cpp
@@ -263,8 +263,7 @@ void MaemoPackageCreationWidget::editDebianFile()
void MaemoPackageCreationWidget::editFile(const QString &filePath)
{
- Core::EditorManager::openEditor(filePath, Core::Id(),
- Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(filePath);
}
} // namespace Internal
diff --git a/src/plugins/mercurial/mercurialplugin.cpp b/src/plugins/mercurial/mercurialplugin.cpp
index e53009f4b4..12db4d74c5 100644
--- a/src/plugins/mercurial/mercurialplugin.cpp
+++ b/src/plugins/mercurial/mercurialplugin.cpp
@@ -558,8 +558,7 @@ void MercurialPlugin::showCommitWidget(const QList<VcsBaseClient::StatusItem> &s
}
Core::IEditor *editor = Core::EditorManager::openEditor(saver.fileName(),
- Constants::COMMIT_ID,
- Core::EditorManager::ModeSwitch);
+ Constants::COMMIT_ID);
if (!editor) {
outputWindow->appendError(tr("Unable to create an editor for the commit."));
return;
diff --git a/src/plugins/perforce/perforceplugin.cpp b/src/plugins/perforce/perforceplugin.cpp
index 70c573c883..8fd5957c80 100644
--- a/src/plugins/perforce/perforceplugin.cpp
+++ b/src/plugins/perforce/perforceplugin.cpp
@@ -649,8 +649,7 @@ void PerforcePlugin::startSubmitProject()
Core::IEditor *PerforcePlugin::openPerforceSubmitEditor(const QString &fileName, const QStringList &depotFileNames)
{
- Core::IEditor *editor = Core::EditorManager::openEditor(fileName, Constants::PERFORCE_SUBMIT_EDITOR_ID,
- Core::EditorManager::ModeSwitch);
+ Core::IEditor *editor = Core::EditorManager::openEditor(fileName, Constants::PERFORCE_SUBMIT_EDITOR_ID);
PerforceSubmitEditor *submitEditor = static_cast<PerforceSubmitEditor*>(editor);
setSubmitEditor(submitEditor);
submitEditor->restrictToProjectFiles(depotFileNames);
@@ -1180,7 +1179,7 @@ Core::IEditor *PerforcePlugin::showOutputInEditor(const QString &title, const QS
if (codec)
e->setCodec(codec);
Core::IEditor *ie = e->editor();
- Core::EditorManager::activateEditor(ie, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(ie);
return ie;
}
@@ -1262,7 +1261,7 @@ void PerforcePlugin::p4Diff(const PerforceDiffParameters &p)
if (existingEditor) {
existingEditor->createNew(result.stdOut);
- Core::EditorManager::activateEditor(existingEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(existingEditor);
return;
}
// Create new editor
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.cpp b/src/plugins/projectexplorer/foldernavigationwidget.cpp
index 0d498a4f7a..09a069eae4 100644
--- a/src/plugins/projectexplorer/foldernavigationwidget.cpp
+++ b/src/plugins/projectexplorer/foldernavigationwidget.cpp
@@ -261,7 +261,7 @@ void FolderNavigationWidget::openItem(const QModelIndex &srcIndex)
return;
}
// Open file.
- Core::EditorManager::openEditor(m_fileSystemModel->filePath(srcIndex), Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(m_fileSystemModel->filePath(srcIndex));
}
void FolderNavigationWidget::setCurrentTitle(QString dirName, const QString &fullPath)
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index e89ce94967..d25442b026 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -265,7 +265,6 @@ public:
setIcon(QIcon(QLatin1String(":/fancyactionbar/images/mode_Project.png")));
setPriority(Constants::P_MODE_SESSION);
setId(Constants::MODE_SESSION);
- setType(Core::Id());
setContextHelpId(QLatin1String("Managing Projects"));
}
};
@@ -2873,7 +2872,7 @@ void ProjectExplorerPlugin::removeProject()
void ProjectExplorerPlugin::openFile()
{
QTC_ASSERT(d->m_currentNode, return);
- Core::EditorManager::openEditor(d->m_currentNode->path(), Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(d->m_currentNode->path());
}
void ProjectExplorerPlugin::searchOnFileSystem()
diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp
index 51f77f56d5..2df69b1bd6 100644
--- a/src/plugins/projectexplorer/projecttreewidget.cpp
+++ b/src/plugins/projectexplorer/projecttreewidget.cpp
@@ -372,7 +372,7 @@ void ProjectTreeWidget::openItem(const QModelIndex &mainIndex)
Node *node = m_model->nodeForIndex(mainIndex);
if (node->nodeType() != FileNodeType)
return;
- IEditor *editor = EditorManager::openEditor(node->path(), Id(), EditorManager::ModeSwitch);
+ IEditor *editor = EditorManager::openEditor(node->path());
if (node->line() >= 0)
editor->gotoLine(node->line());
}
diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorcrumblebar.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorcrumblebar.cpp
index a90b169458..d9e22c9bb9 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorcrumblebar.cpp
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorcrumblebar.cpp
@@ -120,7 +120,8 @@ void FormEditorCrumbleBar::onCrumblePathElementClicked(const QVariant &data)
} else {
crumblePath()->popElement();
nextFileIsCalledInternally();
- Core::EditorManager::openEditor(clickedCrumbleBarInfo.fileName);
+ Core::EditorManager::openEditor(clickedCrumbleBarInfo.fileName, Core::Id(),
+ Core::EditorManager::DoNotMakeVisible);
if (!clickedCrumbleBarInfo.componentId.isEmpty()) {
currentDesignDocument()->changeToSubComponent(
currentDesignDocument()->rewriterView()->modelNodeForId(clickedCrumbleBarInfo.componentId));
diff --git a/src/plugins/qmldesigner/components/integration/designdocument.cpp b/src/plugins/qmldesigner/components/integration/designdocument.cpp
index 63c54a28e0..9a93b93a01 100644
--- a/src/plugins/qmldesigner/components/integration/designdocument.cpp
+++ b/src/plugins/qmldesigner/components/integration/designdocument.cpp
@@ -309,7 +309,7 @@ void DesignDocument::changeToSubComponent(const ModelNode &componentNode)
void DesignDocument::changeToExternalSubComponent(const QString &fileName)
{
- Core::EditorManager::openEditor(fileName);
+ Core::EditorManager::openEditor(fileName, Core::Id(), Core::EditorManager::DoNotMakeVisible);
}
void DesignDocument::goIntoSelectedComponent()
diff --git a/src/plugins/qmldesigner/components/navigator/navigatorview.cpp b/src/plugins/qmldesigner/components/navigator/navigatorview.cpp
index 61ee53a083..deec645b3e 100644
--- a/src/plugins/qmldesigner/components/navigator/navigatorview.cpp
+++ b/src/plugins/qmldesigner/components/navigator/navigatorview.cpp
@@ -289,7 +289,8 @@ void NavigatorView::changeToComponent(const QModelIndex &index)
if (index.isValid() && m_treeModel->data(index, Qt::UserRole).isValid()) {
ModelNode doubleClickNode = m_treeModel->nodeForIndex(index);
if (doubleClickNode.metaInfo().isFileComponent())
- Core::EditorManager::openEditor(doubleClickNode.metaInfo().componentFileName());
+ Core::EditorManager::openEditor(doubleClickNode.metaInfo().componentFileName(),
+ Core::Id(), Core::EditorManager::DoNotMakeVisible);
}
}
diff --git a/src/plugins/qmldesigner/designersettings.cpp b/src/plugins/qmldesigner/designersettings.cpp
index 029e5e082a..874587a64c 100644
--- a/src/plugins/qmldesigner/designersettings.cpp
+++ b/src/plugins/qmldesigner/designersettings.cpp
@@ -35,8 +35,7 @@
using namespace QmlDesigner;
DesignerSettings::DesignerSettings()
- : openDesignMode(QmlDesigner::Constants::QML_OPENDESIGNMODE_DEFAULT),
- itemSpacing(0),
+ : itemSpacing(0),
containerPadding(0),
canvasWidth(10000),
canvasHeight(10000),
@@ -50,9 +49,6 @@ void DesignerSettings::fromSettings(QSettings *settings)
{
settings->beginGroup(QLatin1String(QmlDesigner::Constants::QML_SETTINGS_GROUP));
settings->beginGroup(QLatin1String(QmlDesigner::Constants::QML_DESIGNER_SETTINGS_GROUP));
- openDesignMode = settings->value(
- QLatin1String(QmlDesigner::Constants::QML_OPENDESIGNMODE_SETTINGS_KEY),
- bool(QmlDesigner::Constants::QML_OPENDESIGNMODE_DEFAULT)).toBool();
itemSpacing = settings->value(
QLatin1String(QmlDesigner::Constants::QML_ITEMSPACING_KEY), QVariant(6)).toInt();
containerPadding = settings->value(
@@ -76,7 +72,6 @@ void DesignerSettings::toSettings(QSettings *settings) const
{
settings->beginGroup(QLatin1String(QmlDesigner::Constants::QML_SETTINGS_GROUP));
settings->beginGroup(QLatin1String(QmlDesigner::Constants::QML_DESIGNER_SETTINGS_GROUP));
- settings->setValue(QLatin1String(QmlDesigner::Constants::QML_OPENDESIGNMODE_SETTINGS_KEY), openDesignMode);
settings->setValue(QLatin1String(QmlDesigner::Constants::QML_ITEMSPACING_KEY), itemSpacing);
settings->setValue(QLatin1String(QmlDesigner::Constants::QML_CONTAINERPADDING_KEY), containerPadding);
settings->setValue(QLatin1String(QmlDesigner::Constants::QML_CANVASWIDTH_KEY), canvasWidth);
@@ -92,8 +87,7 @@ void DesignerSettings::toSettings(QSettings *settings) const
bool DesignerSettings::equals(const DesignerSettings &other) const
{
- return openDesignMode == other.openDesignMode
- && containerPadding == other.containerPadding
+ return containerPadding == other.containerPadding
&& canvasWidth == other.canvasWidth
&& canvasHeight == other.canvasHeight
&& warningsInDesigner == other.warningsInDesigner
diff --git a/src/plugins/qmldesigner/designersettings.h b/src/plugins/qmldesigner/designersettings.h
index d38927a19b..a42d47155a 100644
--- a/src/plugins/qmldesigner/designersettings.h
+++ b/src/plugins/qmldesigner/designersettings.h
@@ -47,7 +47,6 @@ public:
void toSettings(QSettings *) const;
bool equals(const DesignerSettings &other) const;
- bool openDesignMode;
int itemSpacing;
int containerPadding;
int canvasWidth;
diff --git a/src/plugins/qmldesigner/designmodewidget.cpp b/src/plugins/qmldesigner/designmodewidget.cpp
index d01ae232b5..b8df512dc7 100644
--- a/src/plugins/qmldesigner/designmodewidget.cpp
+++ b/src/plugins/qmldesigner/designmodewidget.cpp
@@ -451,7 +451,8 @@ void DesignModeWidget::toolBarOnGoBackClicked()
if (m_navigatorHistoryCounter > 0) {
--m_navigatorHistoryCounter;
m_keepNavigatorHistory = true;
- Core::EditorManager::openEditor(m_navigatorHistory.at(m_navigatorHistoryCounter));
+ Core::EditorManager::openEditor(m_navigatorHistory.at(m_navigatorHistoryCounter),
+ Core::Id(), Core::EditorManager::DoNotMakeVisible);
m_keepNavigatorHistory = false;
}
}
@@ -461,7 +462,8 @@ void DesignModeWidget::toolBarOnGoForwardClicked()
if (m_navigatorHistoryCounter < (m_navigatorHistory.size() - 1)) {
++m_navigatorHistoryCounter;
m_keepNavigatorHistory = true;
- Core::EditorManager::openEditor(m_navigatorHistory.at(m_navigatorHistoryCounter));
+ Core::EditorManager::openEditor(m_navigatorHistory.at(m_navigatorHistoryCounter),
+ Core::Id(), Core::EditorManager::DoNotMakeVisible);
m_keepNavigatorHistory = false;
}
}
diff --git a/src/plugins/qmldesigner/qmldesignerconstants.h b/src/plugins/qmldesigner/qmldesignerconstants.h
index b083ee8291..366eef4449 100644
--- a/src/plugins/qmldesigner/qmldesignerconstants.h
+++ b/src/plugins/qmldesigner/qmldesignerconstants.h
@@ -53,7 +53,6 @@ const char GO_INTO_COMPONENT[] = "QmlDesigner.GoIntoComponent";
// This setting is also accessed by the QMlJsEditor.
const char QML_SETTINGS_GROUP[] = "QML";
const char QML_DESIGNER_SETTINGS_GROUP[] = "Designer";
-const char QML_OPENDESIGNMODE_SETTINGS_KEY[] = "OpenDesignMode";
const char QML_ITEMSPACING_KEY[] = "ItemSpacing";
const char QML_CONTAINERPADDING_KEY[] = "ContainerPadding";
const char QML_CANVASWIDTH_KEY[] = "CanvasWidth";
@@ -64,7 +63,6 @@ const char QML_WARNIN_FOR_FEATURES_IN_DESIGNER_KEY[] = "WarnAboutQtQuickFeatures
const char QML_WARNIN_FOR_DESIGNER_FEATURES_IN_EDITOR_KEY[] = "WarnAboutQtQuickDesignerFeaturesInCodeEditor";
const char QML_SHOW_DEBUGVIEW[] = "ShowQtQuickDesignerDebugView";
const char QML_ENABLE_DEBUGVIEW[] = "EnableQtQuickDesignerDebugView";
-enum { QML_OPENDESIGNMODE_DEFAULT = 0 }; // 0 for text mode, 1 for design mode
const char SETTINGS_CATEGORY_QML_ICON[] = ":/core/images/category_qml.png";
diff --git a/src/plugins/qmljseditor/qmljseditoreditable.cpp b/src/plugins/qmljseditor/qmljseditoreditable.cpp
index ee75f356c1..8af4f1a5cb 100644
--- a/src/plugins/qmljseditor/qmljseditoreditable.cpp
+++ b/src/plugins/qmljseditor/qmljseditoreditable.cpp
@@ -33,7 +33,6 @@
#include <qmljstools/qmljstoolsconstants.h>
#include <texteditor/texteditorconstants.h>
-#include <qmldesigner/qmldesignerconstants.h>
#include <projectexplorer/projectexplorerconstants.h>
#include <coreplugin/mimedatabase.h>
@@ -52,41 +51,13 @@ QmlJSEditorEditable::QmlJSEditorEditable(QmlJSTextEditorWidget *editor)
m_context.add(ProjectExplorer::Constants::LANG_QMLJS);
}
-// Use preferred mode from Bauhaus settings
-static bool openInDesignMode()
-{
- static bool bauhausDetected = false;
- static bool bauhausPresent = false;
- // Check if Bauhaus is loaded, that is, a Design mode widget is
- // registered for the QML mime type.
- if (!bauhausDetected) {
- if (const Core::IMode *dm = Core::ModeManager::mode(Core::Constants::MODE_DESIGN))
- if (const Core::DesignMode *designMode = qobject_cast<const Core::DesignMode *>(dm))
- bauhausPresent = designMode->registeredMimeTypes().contains(QLatin1String(QmlJSTools::Constants::QML_MIMETYPE));
- bauhausDetected = true;
- }
- if (!bauhausPresent)
- return false;
-
- return bool(QmlDesigner::Constants::QML_OPENDESIGNMODE_DEFAULT);
-}
-
-Core::Id QmlJSEditorEditable::preferredModeType() const
+bool QmlJSEditorEditable::isDesignModePreferred() const
{
+ // stay in design mode if we are there
Core::IMode *mode = Core::ModeManager::currentMode();
- if (mode && (mode->type() == Core::Constants::MODE_DESIGN_TYPE
- || mode->type() == Core::Constants::MODE_EDIT_TYPE))
- {
- return mode->type();
- }
-
- // if we are in other mode than edit or design, use the hard-coded default.
- // because the editor opening decision is modal, it would be confusing to
- // have the user also access to this failsafe setting.
- if (editorWidget()->mimeType() == QLatin1String(QmlJSTools::Constants::QML_MIMETYPE)
- && openInDesignMode())
- return Core::Id(Core::Constants::MODE_DESIGN_TYPE);
- return Core::Id();
+ if (mode && mode->id() == Core::Constants::MODE_DESIGN)
+ return true;
+ return false;
}
void QmlJSEditorEditable::setTextCodec(QTextCodec *codec, TextCodecReason reason)
diff --git a/src/plugins/qmljseditor/qmljseditoreditable.h b/src/plugins/qmljseditor/qmljseditoreditable.h
index ac7d161588..07550c50e4 100644
--- a/src/plugins/qmljseditor/qmljseditoreditable.h
+++ b/src/plugins/qmljseditor/qmljseditoreditable.h
@@ -49,7 +49,7 @@ public:
Core::Id id() const;
bool isTemporary() const { return false; }
bool open(QString *errorString, const QString &fileName, const QString &realFileName);
- Core::Id preferredModeType() const;
+ bool isDesignModePreferred() const;
void setTextCodec(QTextCodec *codec, TextCodecReason = TextCodecOtherReason);
const Utils::CommentDefinition *commentDefinition() const;
diff --git a/src/plugins/qmljseditor/qmljsfindreferences.cpp b/src/plugins/qmljseditor/qmljsfindreferences.cpp
index e5aa05c2e7..af0d7b461b 100644
--- a/src/plugins/qmljseditor/qmljsfindreferences.cpp
+++ b/src/plugins/qmljseditor/qmljsfindreferences.cpp
@@ -985,11 +985,9 @@ void FindReferences::openEditor(const Find::SearchResultItem &item)
{
if (item.path.size() > 0) {
Core::EditorManager::openEditorAt(QDir::fromNativeSeparators(item.path.first()),
- item.lineNumber, item.textMarkPos, Core::Id(),
- Core::EditorManager::ModeSwitch);
+ item.lineNumber, item.textMarkPos);
} else {
- Core::EditorManager::openEditor(QDir::fromNativeSeparators(item.text),
- Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(QDir::fromNativeSeparators(item.text));
}
}
diff --git a/src/plugins/qmljstools/qmljsfunctionfilter.cpp b/src/plugins/qmljstools/qmljsfunctionfilter.cpp
index 13710f5dd0..33c1eb9356 100644
--- a/src/plugins/qmljstools/qmljsfunctionfilter.cpp
+++ b/src/plugins/qmljstools/qmljsfunctionfilter.cpp
@@ -111,6 +111,5 @@ QList<Locator::FilterEntry> FunctionFilter::matchesFor(QFutureInterface<Locator:
void FunctionFilter::accept(Locator::FilterEntry selection) const
{
const LocatorData::Entry entry = qvariant_cast<LocatorData::Entry>(selection.internalData);
- Core::EditorManager::openEditorAt(entry.fileName, entry.line, entry.column,
- Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditorAt(entry.fileName, entry.line, entry.column);
}
diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.cpp b/src/plugins/qt4projectmanager/qt4projectmanager.cpp
index 33926d2363..b3d2c3d0d9 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanager.cpp
+++ b/src/plugins/qt4projectmanager/qt4projectmanager.cpp
@@ -247,7 +247,8 @@ void Qt4Manager::addLibrary(const QString &fileName, ProFileEditorWidget *editor
editable = editor->editor();
} else {
editable = qobject_cast<TextEditor::BaseTextEditor *>
- (Core::EditorManager::openEditor(fileName, Qt4ProjectManager::Constants::PROFILE_EDITOR_ID));
+ (Core::EditorManager::openEditor(fileName, Qt4ProjectManager::Constants::PROFILE_EDITOR_ID,
+ Core::EditorManager::DoNotMakeVisible));
}
if (!editable)
return;
diff --git a/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp b/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp
index d7ca07f3a1..a6c5d62a8e 100644
--- a/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp
+++ b/src/plugins/qt4projectmanager/wizards/abstractmobileappwizard.cpp
@@ -283,7 +283,7 @@ bool AbstractMobileAppWizard::postGenerateFiles(const QWizard *w,
if (success) {
const QString fileToOpen = fileToOpenPostGeneration();
if (!fileToOpen.isEmpty()) {
- Core::EditorManager::openEditor(fileToOpen, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(fileToOpen);
ProjectExplorer::ProjectExplorerPlugin::instance()->setCurrentFile(0, fileToOpen);
}
}
diff --git a/src/plugins/qtsupport/gettingstartedwelcomepage.cpp b/src/plugins/qtsupport/gettingstartedwelcomepage.cpp
index c40aebeb04..0ad1763da3 100644
--- a/src/plugins/qtsupport/gettingstartedwelcomepage.cpp
+++ b/src/plugins/qtsupport/gettingstartedwelcomepage.cpp
@@ -431,7 +431,7 @@ void ExamplesWelcomePage::openProject(const QString &projectFile, const QStringL
Core::ICore::openFiles(filesToOpen);
if (project->needsConfiguration())
project->configureAsExampleProject(platforms);
- Core::ModeManager::activateModeType(Core::Constants::MODE_EDIT_TYPE);
+ Core::ModeManager::activateMode(Core::Constants::MODE_EDIT);
if (help.isValid())
Core::ICore::helpManager()->handleHelpRequest(help.toString() + QLatin1String("?view=split"));
}
diff --git a/src/plugins/qtsupport/qtoutputformatter.cpp b/src/plugins/qtsupport/qtoutputformatter.cpp
index 82d0dcc891..1c4ffd624d 100644
--- a/src/plugins/qtsupport/qtoutputformatter.cpp
+++ b/src/plugins/qtsupport/qtoutputformatter.cpp
@@ -234,7 +234,7 @@ void QtOutputFormatter::handleLink(const QString &href)
if (!fileName.isEmpty()) {
fileName = m_projectFinder.findFile(QUrl::fromLocalFile(fileName));
- Core::EditorManager::openEditorAt(fileName, line, 0);
+ Core::EditorManager::openEditorAt(fileName, line);
return;
}
}
diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp
index 4251930b63..5d03160596 100644
--- a/src/plugins/subversion/subversionplugin.cpp
+++ b/src/plugins/subversion/subversionplugin.cpp
@@ -589,7 +589,7 @@ void SubversionPlugin::svnDiff(const Subversion::Internal::SubversionDiffParamet
// Show in the same editor if diff has been executed before
if (Core::IEditor *existingEditor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
existingEditor->createNew(response.stdOut);
- Core::EditorManager::activateEditor(existingEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(existingEditor);
setDiffBaseDirectory(existingEditor, p.workingDir);
return;
}
@@ -613,8 +613,7 @@ void SubversionPlugin::svnDiff(const Subversion::Internal::SubversionDiffParamet
SubversionSubmitEditor *SubversionPlugin::openSubversionSubmitEditor(const QString &fileName)
{
Core::IEditor *editor = Core::EditorManager::openEditor(fileName,
- Constants::SUBVERSIONCOMMITEDITOR_ID,
- Core::EditorManager::ModeSwitch);
+ Constants::SUBVERSIONCOMMITEDITOR_ID);
SubversionSubmitEditor *submitEditor = qobject_cast<SubversionSubmitEditor*>(editor);
QTC_CHECK(submitEditor);
setSubmitEditor(submitEditor);
@@ -901,7 +900,7 @@ void SubversionPlugin::filelog(const QString &workingDir,
const QString tag = VcsBase::VcsBaseEditorWidget::editorTag(VcsBase::LogOutput, workingDir, files);
if (Core::IEditor *editor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(response.stdOut);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("svn log %1").arg(id);
const QString source = VcsBase::VcsBaseEditorWidget::getSource(workingDir, files);
@@ -979,7 +978,7 @@ void SubversionPlugin::vcsAnnotate(const QString &workingDir, const QString &fil
if (Core::IEditor *editor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(response.stdOut);
VcsBase::VcsBaseEditorWidget::gotoLineOfEditor(editor, lineNumber);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("svn annotate %1").arg(id);
Core::IEditor *newEditor = showOutputInEditor(title, response.stdOut, VcsBase::AnnotateOutput, source, codec);
@@ -1044,7 +1043,7 @@ void SubversionPlugin::describe(const QString &source, const QString &changeNr)
const QString tag = VcsBase::VcsBaseEditorWidget::editorTag(VcsBase::DiffOutput, source, QStringList(), changeNr);
if (Core::IEditor *editor = VcsBase::VcsBaseEditorWidget::locateEditorByTag(tag)) {
editor->createNew(description);
- Core::EditorManager::activateEditor(editor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(editor);
} else {
const QString title = QString::fromLatin1("svn describe %1#%2").arg(fi.fileName(), changeNr);
Core::IEditor *newEditor = showOutputInEditor(title, description, VcsBase::DiffOutput, source, codec);
@@ -1189,7 +1188,7 @@ Core::IEditor *SubversionPlugin::showOutputInEditor(const QString &title, const
if (codec)
e->setCodec(codec);
Core::IEditor *ie = e->editor();
- Core::EditorManager::activateEditor(ie, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(ie);
return ie;
}
diff --git a/src/plugins/texteditor/basefilefind.cpp b/src/plugins/texteditor/basefilefind.cpp
index baf1318dc1..250eae2ddc 100644
--- a/src/plugins/texteditor/basefilefind.cpp
+++ b/src/plugins/texteditor/basefilefind.cpp
@@ -312,12 +312,9 @@ void BaseFileFind::openEditor(const Find::SearchResultItem &item)
if (item.path.size() > 0) {
openedEditor = Core::EditorManager::openEditorAt(QDir::fromNativeSeparators(item.path.first()),
item.lineNumber,
- item.textMarkPos,
- Core::Id(),
- Core::EditorManager::ModeSwitch);
+ item.textMarkPos);
} else {
- openedEditor = Core::EditorManager::openEditor(QDir::fromNativeSeparators(item.text),
- Core::Id(), Core::EditorManager::ModeSwitch);
+ openedEditor = Core::EditorManager::openEditor(QDir::fromNativeSeparators(item.text));
}
if (d->m_currentFindSupport)
d->m_currentFindSupport->clearResults();
diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp
index ab343d4ad4..a9aa9e97dd 100644
--- a/src/plugins/texteditor/basetexteditor.cpp
+++ b/src/plugins/texteditor/basetexteditor.cpp
@@ -4899,8 +4899,7 @@ bool BaseTextEditorWidget::openLink(const Link &link, bool inNextSplit)
return true;
}
- return Core::EditorManager::openEditorAt(link.targetFileName, link.targetLine, link.targetColumn,
- Core::Id(), Core::EditorManager::ModeSwitch);
+ return Core::EditorManager::openEditorAt(link.targetFileName, link.targetLine, link.targetColumn);
}
void BaseTextEditorWidget::updateLink(QMouseEvent *e)
diff --git a/src/plugins/texteditor/linenumberfilter.cpp b/src/plugins/texteditor/linenumberfilter.cpp
index bec075131d..b6dd394cea 100644
--- a/src/plugins/texteditor/linenumberfilter.cpp
+++ b/src/plugins/texteditor/linenumberfilter.cpp
@@ -97,9 +97,7 @@ void LineNumberFilter::accept(FilterEntry selection) const
data.first = currLine;
}
editor->gotoLine(data.first, data.second);
- editor->widget()->setFocus();
- ICore::raiseWindow(editor->widget());
- Core::ModeManager::activateModeType(Id(Core::Constants::MODE_EDIT_TYPE));
+ Core::EditorManager::activateEditor(editor);
}
}
diff --git a/src/plugins/texteditor/refactoringchanges.cpp b/src/plugins/texteditor/refactoringchanges.cpp
index 8ca3a3cc8d..e8b73f582a 100644
--- a/src/plugins/texteditor/refactoringchanges.cpp
+++ b/src/plugins/texteditor/refactoringchanges.cpp
@@ -136,7 +136,7 @@ BaseTextEditorWidget *RefactoringChanges::openEditor(const QString &fileName, bo
{
Core::EditorManager::OpenEditorFlags flags = Core::EditorManager::IgnoreNavigationHistory;
if (!activate)
- flags |= Core::EditorManager::NoActivate;
+ flags |= Core::EditorManager::DoNotChangeCurrentEditor;
if (line != -1) {
// openEditorAt uses a 1-based line and a 0-based column!
column -= 1;
diff --git a/src/plugins/texteditor/texteditorplugin.cpp b/src/plugins/texteditor/texteditorplugin.cpp
index e47a350424..ce2da09161 100644
--- a/src/plugins/texteditor/texteditorplugin.cpp
+++ b/src/plugins/texteditor/texteditorplugin.cpp
@@ -137,7 +137,7 @@ void ScratchFileWizard::createFile()
file.setAutoRemove(false);
QTC_ASSERT(file.open(), return; );
file.close();
- Core::EditorManager::openEditor(file.fileName(), Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(file.fileName());
}
// ExtensionSystem::PluginInterface
diff --git a/src/plugins/vcsbase/cleandialog.cpp b/src/plugins/vcsbase/cleandialog.cpp
index ed8a46bd78..b5366102ae 100644
--- a/src/plugins/vcsbase/cleandialog.cpp
+++ b/src/plugins/vcsbase/cleandialog.cpp
@@ -279,7 +279,7 @@ void CleanDialog::slotDoubleClicked(const QModelIndex &index)
if (const QStandardItem *item = d->m_filesModel->itemFromIndex(index))
if (!item->data(Internal::isDirectoryRole).toBool()) {
const QString fname = item->data(Internal::fileNameRole).toString();
- Core::EditorManager::openEditor(fname, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(fname);
}
}
diff --git a/src/plugins/vcsbase/vcsbaseclient.cpp b/src/plugins/vcsbase/vcsbaseclient.cpp
index 059dff26c0..bf4b8ce6e1 100644
--- a/src/plugins/vcsbase/vcsbaseclient.cpp
+++ b/src/plugins/vcsbase/vcsbaseclient.cpp
@@ -576,7 +576,7 @@ VcsBase::VcsBaseEditorWidget *VcsBaseClient::createVcsEditor(Core::Id kind, QStr
}
baseEditor->setForceReadOnly(true);
- Core::EditorManager::activateEditor(outputEditor, Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(outputEditor);
return baseEditor;
}
diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp
index b6d6d15f4d..321cca7e32 100644
--- a/src/plugins/vcsbase/vcsbaseeditor.cpp
+++ b/src/plugins/vcsbase/vcsbaseeditor.cpp
@@ -1115,7 +1115,7 @@ void VcsBaseEditorWidget::jumpToChangeFromDiff(QTextCursor cursor)
if (!exists)
return;
- Core::IEditor *ed = Core::EditorManager::openEditor(fileName, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::IEditor *ed = Core::EditorManager::openEditor(fileName);
if (TextEditor::ITextEditor *editor = qobject_cast<TextEditor::ITextEditor *>(ed))
editor->gotoLine(chunkStart + lineCount);
}
diff --git a/src/plugins/vcsbase/vcsbaseoutputwindow.cpp b/src/plugins/vcsbase/vcsbaseoutputwindow.cpp
index 3728253f55..9dd32497ed 100644
--- a/src/plugins/vcsbase/vcsbaseoutputwindow.cpp
+++ b/src/plugins/vcsbase/vcsbaseoutputwindow.cpp
@@ -189,7 +189,7 @@ void OutputWindowPlainTextEdit::contextMenuEvent(QContextMenuEvent *event)
}
if (action == openAction) {
const QString fileName = action->data().toString();
- Core::EditorManager::openEditor(fileName, Core::Id(), Core::EditorManager::ModeSwitch);
+ Core::EditorManager::openEditor(fileName);
}
}
delete menu;
diff --git a/src/plugins/vcsbase/vcsbaseplugin.cpp b/src/plugins/vcsbase/vcsbaseplugin.cpp
index c56f846928..9022b65c21 100644
--- a/src/plugins/vcsbase/vcsbaseplugin.cpp
+++ b/src/plugins/vcsbase/vcsbaseplugin.cpp
@@ -691,9 +691,7 @@ bool VcsBasePlugin::raiseSubmitEditor() const
{
if (!d->m_submitEditor)
return false;
- Core::EditorManager::activateEditor(
- d->m_submitEditor,
- Core::EditorManager::IgnoreNavigationHistory | Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(d->m_submitEditor, Core::EditorManager::IgnoreNavigationHistory);
return true;
}
diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
index d71c8866f9..b4c7e3e2d5 100644
--- a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
+++ b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
@@ -573,8 +573,7 @@ VcsBaseSubmitEditor::PromptSubmitResult
{
SubmitEditorWidget *submitWidget = static_cast<SubmitEditorWidget *>(this->widget());
- Core::EditorManager::activateEditor(
- this, Core::EditorManager::IgnoreNavigationHistory | Core::EditorManager::ModeSwitch);
+ Core::EditorManager::activateEditor(this, Core::EditorManager::IgnoreNavigationHistory);
QString errorMessage;
QMessageBox::StandardButton answer = QMessageBox::Yes;
diff --git a/src/plugins/welcome/welcomeplugin.cpp b/src/plugins/welcome/welcomeplugin.cpp
index 36c53cda76..8e5b1ddfa9 100644
--- a/src/plugins/welcome/welcomeplugin.cpp
+++ b/src/plugins/welcome/welcomeplugin.cpp
@@ -143,7 +143,6 @@ WelcomeMode::WelcomeMode() :
setIcon(qtLogo);
setPriority(Core::Constants::P_MODE_WELCOME);
setId(Core::Constants::MODE_WELCOME);
- setType(Core::Constants::MODE_WELCOME_TYPE);
setContextHelpId(QLatin1String("Qt Creator Manual"));
setContext(Core::Context(Core::Constants::C_WELCOME_MODE));