diff --git a/src/plugins/analyzerbase/analyzermanager.cpp b/src/plugins/analyzerbase/analyzermanager.cpp index 919b5b2a10cdd85db49e5ade9387f071448e4090..5101e2085478ae8768211e5b6ab9ad2a60f09399 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 ebf104bc97557ff08d7d542699b01a0822337adb..3614e74529b54eebb3c5f7597604c0effee16861 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 d7614bf67ecb6e7a85cd913e06ca6ca8dfdc78d3..ee881e3e4b4df6471aae61fc3c441bb30496a40d 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 cd6bbc1441af40ead4a40a3599b43ac82ca88caa..d0c9d91718f624041dd06571c52a4dde18df3995 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 47f173495469519f981ddbb028ef42499f2a2444..a591d995fc677e74056ef20d9198c37f12b78132 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 cee77d0225ae3f677f0730060d2242d148bb2bf2..72297973940999e0ff6ee65819b0874465982d02 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 77ddd25ae720cba9d527bd607a9a6188a1f3dfe9..1a6072e978d6608385e9d2939d209f2f5f3071dd 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 4101fba001aeaf41b148a5aec99a18e16966d4d7..47f64a2d60d5aa3dcc6e220e82bf1a429ec4fc97 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 b3bae535e4afbb11c562224bccecc9f44093bac4..38cb29cf88804aec5802c3539e7db394c5a39199 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 30cbb9c0233dfb163835f0e76f4b550e4e66a182..6bd6009b3d23f8864e58a647c66ef0e89714dbea 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 d4203131362ab3ac6e5d330d913c5fd6074554ca..f2c64f7a9bdd4c98709db98a6e42cd543e60843f 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 9a4624684660a0f3f351279fb9cd58040bd02d7f..0b6dacba5bd959fc60b87c2b76af91b7a27b54c4 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 e7caecf71116aa4bebc64da6a9125d0c0851a65b..1367c799a5a407085c73aa1fcb1c0888ae2b2dba 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 900f370e297f5838847654bcadd64b0c0a4fdffe..9fd7e2ca82867aca7790b3a8b39bc1afcd6c8748 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 232b0bf51f081ac668c040b03cbf5324e7d22fb9..ea9de058a22ffc21fa0e01f5caff16c24f998099 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 64f90435a62a628e524e1a209f70c1f0621270b6..6ae0d92318d3c52a6dd6b201763d46ccbe840151 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 894d3af0575040b5895c6519062165d75bb08453..b278f08c48f0331935281e4defdd2ec7b70a7f66 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 caf17cada03250c1d38024e73141d680c21c1967..f053f98d9f6ae037e83472679455342808f2ae28 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 2d1409c5e9b70eede0698bc8da174ca72db861ca..12102111d1ba0ab31a6957912226c8f5e43c1a0d 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 e49af606fa7ee6fe03d71c1302ff1248fd5d0322..ae80aa425ed09d8a8b2b3a587ed4f6c2fdbf310a 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 b26042d0a683544a2df61de9d85af91cf8327e01..e7aa07ac901db6dbc2000186e02a70bf3fea5413 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 c0ebe30a330fa9be5db2d341e007c37a0200cd6e..1c0c49904d91fe465ef15c53c3f63befc8eacc45 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 f27d92081d2b00b1d7c709107da365ae8322747b..bcf590c0d9f13fa9d9e5e05786d0eb44f27c5c58 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 e2ea80f0d2fbab824d8bea7eb0ca851a66a62eef..0117a7d98121cd246b24b8bc3fe4a27c81547a47 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 af579bb5a7ebaa7a908476071631050c7927fc86..93b2a804824e553ba264ade6711f63efa3ab542f 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 b3cadb5e17388e18931cf9c024921ff411fa18cb..85ffd0a65c719d1f3479df67efb1ffcd41268c7c 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 4dca818a7cff5206c9061a441785499c87eb0365..aada6367c994d4164d29eb0fa98e3615a4b4a7eb 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 b167f344cd37d0b4238d1d88e4e257373e507a21..20d9219b6afad05721009654bd482cfc437f89b9 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 5bedf6a41c431b9d89e77add1845fd433fdbfd25..e435c95cdb6a5461526f72e4a23a34bd7c7ba5fb 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 6ed794e19cbc5267d74d5ec6b49a76f24c4e4ec9..d6234089ee3427543d1f893d91ab54ca3488caa7 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 05f8f786fa734b6ecdb323dddfb69ba1801b28fe..a04f417d16a331dfa7e1c7cf1d0e4ba9039c9a71 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 1fbb5a9d2c34d164400178de81ad87f30d72f02e..956c1bc51d8957e51709b1c53e259165020107db 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 7df9f4bb4d541a08d3c14342d0a29f5ba927eab7..6ca9090f03d35275f2caab3964fb875d7724017e 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 31256f3f3ac5f6229eaac933b43fb2fb4590ad4d..4bce0b3466244f114b22a9fcc3e38da395fdf182 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 6596c2a413127c2de4ebd8ddbf658de3af9833f3..45bcf40495ebc7ccc82cdf189028785e854fbeb8 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 1f0cc2d097253da260f42970a73419f7d89cd7ac..1520e34ce26f9764ba03df881feb551c205a1d2c 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 25d64aeb46165d0c6cb7db520eddf72a0856c1b4..ea781f40267f568b69967272f9252b97b6ba3882 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 14166a5bdf8aeac4a203b1ad8d941d385fd90962..8cd2a96e40b88e48c5e9052b7e6649e23c7ede89 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 212d494b3d5b254938bf7c76890cf2fb9c660faa..4e7af5c91b7a4bac0fd69c44b7783f113832a622 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 f208a65ecf42af2a4f35c7b0f55cdb81c1e3c711..c626b2de94883b06e81ffd8aba481d6957c3a789 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 0511985bb00fd62a1c53c0ab4b05863e351861f6..90a1661d25d9a84dc4c74348109d398cdbeb640b 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 e53009f4b48b681e1be9eb5f5891061cea16f273..12db4d74c5453cd8e6d4b8f2218d7d2798cfcf20 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 70c573c8830e094d4c947ff27c83f3782f21cddc..8fd5957c804fdeb17a03a9cd433f4a5e9180131c 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 0d498a4f7a1da4b4200eb3913c9d3594b7e5bad7..09a069eae4c5f1cb73918e5f28306e9cab155072 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 e89ce9496771a6ad0f5742f546b224640d94f43d..d25442b026739626d2338ac6eec0f9cd8a1f0859 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 51f77f56d593d4bec98464250c3662ca0dd05df9..2df69b1bd664b176eb2ad3b93c64b3cda000b4ff 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 a90b169458b77cd2b12113de612ea11dd7154b0f..d9e22c9bb967e8deebf9e67ec96f1ea957e6374d 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 63c54a28e0e8895962e25fb457c782c4d02bd964..9a93b93a01c45fd97882ca67b05172bacce3690e 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 61ee53a0837e143c9b3494dbec9c0ae286426b10..deec645b3eefc2e09c4e575d72ca3701ac83a424 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 029e5e082a0c843ba34265bdd2465b86502b67e8..874587a64c9c92948ec398c99527d49346042920 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 d38927a19b7b4a4b9948047a58bf9a70145d07ce..a42d47155a77090e50197acbc81060528986c984 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 d01ae232b5e738273e750a71c763c4d3dca3ba3a..b8df512dc7cdb67345fe4bdb844712fbc4cc2b06 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 b083ee829139aea684351e6b8594c1022e0b3ece..366eef44490513ff7bacdccf2e2fd93195d52051 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 ee75f356c1f1532b18a9109074ac7327581955ae..8af4f1a5cba73a9c1e32ad1c608361c28e6b23f6 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 ac7d161588a586e2a2ab5920ef0121c4b2dcaf2f..07550c50e455f09fdea510b79bb52b4eeb701b76 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 e5aa05c2e77489af168756bc95a73aa042d01150..af0d7b461b937e686ff9a80b5846472144ef0b06 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 13710f5dd0d87a75a2209542ff8ca15fd5d5a369..33c1eb935635c754273337ac67b1b1314b490c11 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 33926d2363679747030891e0e2b9ff6310f16848..b3d2c3d0d99d08049bcad4799422767373693875 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 d7ca07f3a1d05f5b4d37f391bd50713095715b6f..a6c5d62a8e3bc2613bffed6dd8ff6886398046e7 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 c40aebeb0482616cbb1dc0b6d033dd23bc5492f2..0ad1763da3f49a28d63203a5dc4d8559f817e8e8 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 82d0dcc8919407ce66de443f409f26cfdede28de..1c4ffd624d33effb922fb86cf4c7c594896cb92c 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 4251930b63e1b35151f93ea719358ae1e6fda915..5d03160596ed7f990bbd2120f6304b3d77d00ac9 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 baf1318dc103dd1f94024c09d97944988720cd71..250eae2ddcc0132a9ded5c8f81d139e9936d3dd8 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 ab343d4ad4e4156bb647488e296e03db21fd8ef5..a9aa9e97dd012311f2ac9708e5343b659eb61f12 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 bec075131da0004ce2d97053c6eab18d4401333e..b6dd394ceab9154799762bb9f35d38dadd34f4e3 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 8ca3a3cc8d75560b837b158b4427e9b19d11e23e..e8b73f582a12d744ad025df18d34a160cf9b5016 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 e47a350424655690bf2e26d5a3617225af86a485..ce2da09161fb0d74c0433ae993770e2f1fc76f01 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 ed8a46bd78f89e9156ac58dd057b2e4a1a950d4a..b5366102ae34125c5ab3afde42aa587eea173c29 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 059dff26c0f0a509887bbaea6b66d2accafa6d94..bf4b8ce6e1301ce0a9137f8a7a6700d00fc8711e 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 b6d6d15f4dba691b836621de3fec0752fcf4966e..321cca7e32d71b4e3346238afaa47576c63c51a2 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 3728253f556ced95b93d73ec5ebb28279c29c069..9dd32497ed7d6d5c4363dc673f8f726015b4c3a4 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 c56f846928663bc05beb5a5fe589c45e4d9af1a9..9022b65c2163b0c619e1cbe68224131746a7a2de 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 d71c8866f9a5b89f7be9e4cdb22759f39bbd5f29..b4c7e3e2d5cd833842a449f11f2892ef2834014a 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 36c53cda76418beb74b87213e4136604109d70dc..8e5b1ddfa95026c55f1fb3370114cb648586d16e 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));