diff options
author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2016-11-24 09:58:11 +0100 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2017-01-10 15:14:19 +0000 |
commit | 8b67458a9567fe4f83d3658916f5534617316b02 (patch) | |
tree | 1d35569f8a2c30807c1bcd8c13968d4fdcf6a8a4 | |
parent | acb07875b7f5578fae26a5230ccf37ba35936e51 (diff) | |
download | qt-creator-8b67458a9567fe4f83d3658916f5534617316b02.tar.gz |
Prefix editor's uniqueId with plugin name
In this way we minimize the chance of
generating non-unique id.
Change-Id: Idd177c5a4b44b17a58c2a944ec77b9517e91964e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r-- | src/plugins/diffeditor/diffeditorconstants.h | 2 | ||||
-rw-r--r-- | src/plugins/diffeditor/diffeditorcontroller.h | 3 | ||||
-rw-r--r-- | src/plugins/diffeditor/diffeditorplugin.cpp | 12 | ||||
-rw-r--r-- | src/plugins/git/gitclient.cpp | 21 | ||||
-rw-r--r-- | src/plugins/git/gitconstants.h | 2 | ||||
-rw-r--r-- | src/plugins/git/gitgrep.cpp | 7 | ||||
-rw-r--r-- | src/plugins/qmljseditor/qmljseditor.cpp | 8 | ||||
-rw-r--r-- | src/plugins/qmljseditor/qmljseditorconstants.h | 2 | ||||
-rw-r--r-- | src/plugins/subversion/subversionclient.cpp | 6 | ||||
-rw-r--r-- | src/plugins/subversion/subversionconstants.h | 2 |
10 files changed, 48 insertions, 17 deletions
diff --git a/src/plugins/diffeditor/diffeditorconstants.h b/src/plugins/diffeditor/diffeditorconstants.h index 1c9f605aa4..a7b4185a4f 100644 --- a/src/plugins/diffeditor/diffeditorconstants.h +++ b/src/plugins/diffeditor/diffeditorconstants.h @@ -30,6 +30,8 @@ namespace DiffEditor { namespace Constants { +const char DIFF_EDITOR_PLUGIN[] = "DiffEditorPlugin"; + const char DIFF_EDITOR_ID[] = "Diff Editor"; const char DIFF_EDITOR_DISPLAY_NAME[] = QT_TRANSLATE_NOOP("DiffEditor", "Diff Editor"); const char DIFF_EDITOR_MIMETYPE[] = "text/x-patch"; diff --git a/src/plugins/diffeditor/diffeditorcontroller.h b/src/plugins/diffeditor/diffeditorcontroller.h index f73524fff5..2a9a49fe39 100644 --- a/src/plugins/diffeditor/diffeditorcontroller.h +++ b/src/plugins/diffeditor/diffeditorcontroller.h @@ -55,7 +55,8 @@ public: QString makePatch(bool revert, bool addPrefix = false) const; - static Core::IDocument *findOrCreateDocument(const QString &vcsId, const QString &displayName); + static Core::IDocument *findOrCreateDocument(const QString &vcsId, + const QString &displayName); static DiffEditorController *controller(Core::IDocument *document); public slots: diff --git a/src/plugins/diffeditor/diffeditorplugin.cpp b/src/plugins/diffeditor/diffeditorplugin.cpp index cc0f2d3a0f..e324d60aa3 100644 --- a/src/plugins/diffeditor/diffeditorplugin.cpp +++ b/src/plugins/diffeditor/diffeditorplugin.cpp @@ -428,7 +428,8 @@ DiffEditorServiceImpl::DiffEditorServiceImpl(QObject *parent) : void DiffEditorServiceImpl::diffModifiedFiles(const QStringList &fileNames) { - const QString documentId = QLatin1String("Diff Modified Files"); + const QString documentId = Constants::DIFF_EDITOR_PLUGIN + + QLatin1String(".DiffModifiedFiles"); const QString title = tr("Diff Modified Files"); auto const document = qobject_cast<DiffEditorDocument *>( DiffEditorController::findOrCreateDocument(documentId, title)); @@ -520,7 +521,8 @@ void DiffEditorPlugin::diffCurrentFile() if (fileName.isEmpty()) return; - const QString documentId = QLatin1String("Diff ") + fileName; + const QString documentId = Constants::DIFF_EDITOR_PLUGIN + + QLatin1String(".Diff.") + fileName; const QString title = tr("Diff \"%1\"").arg(fileName); auto const document = qobject_cast<DiffEditorDocument *>( DiffEditorController::findOrCreateDocument(documentId, title)); @@ -535,7 +537,8 @@ void DiffEditorPlugin::diffCurrentFile() void DiffEditorPlugin::diffOpenFiles() { - const QString documentId = QLatin1String("Diff Open Files"); + const QString documentId = Constants::DIFF_EDITOR_PLUGIN + + QLatin1String(".DiffOpenFiles"); const QString title = tr("Diff Open Files"); auto const document = qobject_cast<DiffEditorDocument *>( DiffEditorController::findOrCreateDocument(documentId, title)); @@ -566,7 +569,8 @@ void DiffEditorPlugin::diffExternalFiles() if (EditorManager::skipOpeningBigTextFile(fileName2)) return; - const QString documentId = QLatin1String("Diff ") + fileName1 + QLatin1String(", ") + fileName2; + const QString documentId = Constants::DIFF_EDITOR_PLUGIN + + QLatin1String(".DiffExternalFiles.") + fileName1 + QLatin1Char('.') + fileName2; const QString title = tr("Diff \"%1\", \"%2\"").arg(fileName1, fileName2); auto const document = qobject_cast<DiffEditorDocument *>( DiffEditorController::findOrCreateDocument(documentId, title)); diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index 8cdb4db186..1db262c29f 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -747,7 +747,9 @@ void GitClient::diffFiles(const QString &workingDirectory, const QStringList &unstagedFileNames, const QStringList &stagedFileNames) const { - requestReload("Files:" + workingDirectory, + const QString documentId = QLatin1String(Constants::GIT_PLUGIN) + + QLatin1String(".DiffFiles.") + workingDirectory; + requestReload(documentId, workingDirectory, tr("Git Diff Files"), [this, workingDirectory, stagedFileNames, unstagedFileNames] (IDocument *doc) -> DiffEditorController* { @@ -758,7 +760,9 @@ void GitClient::diffFiles(const QString &workingDirectory, void GitClient::diffProject(const QString &workingDirectory, const QString &projectDirectory) const { - requestReload("Project:" + workingDirectory, + const QString documentId = QLatin1String(Constants::GIT_PLUGIN) + + QLatin1String(".DiffProject.") + workingDirectory; + requestReload(documentId, workingDirectory, tr("Git Diff Project"), [this, workingDirectory, projectDirectory] (IDocument *doc) -> DiffEditorController* { @@ -768,7 +772,9 @@ void GitClient::diffProject(const QString &workingDirectory, const QString &proj void GitClient::diffRepository(const QString &workingDirectory) { - requestReload("Repository:" + workingDirectory, + const QString documentId = QLatin1String(Constants::GIT_PLUGIN) + + QLatin1String(".DiffRepository.") + workingDirectory; + requestReload(documentId, workingDirectory, tr("Git Diff Repository"), [this, workingDirectory](IDocument *doc) -> DiffEditorController* { return new RepositoryDiffController(doc, workingDirectory); @@ -779,7 +785,8 @@ void GitClient::diffFile(const QString &workingDirectory, const QString &fileNam { const QString title = tr("Git Diff \"%1\"").arg(fileName); const QString sourceFile = VcsBaseEditor::getSource(workingDirectory, fileName); - const QString documentId = "File:" + sourceFile; + const QString documentId = QLatin1String(Constants::GIT_PLUGIN) + + QLatin1String(".DifFile.") + sourceFile; requestReload(documentId, sourceFile, title, [this, workingDirectory, fileName] (IDocument *doc) -> DiffEditorController* { @@ -791,7 +798,8 @@ void GitClient::diffBranch(const QString &workingDirectory, const QString &branchName) const { const QString title = tr("Git Diff Branch \"%1\"").arg(branchName); - const QString documentId = "Branch:" + branchName; + const QString documentId = QLatin1String(Constants::GIT_PLUGIN) + + QLatin1String(".DiffBranch.") + branchName; requestReload(documentId, workingDirectory, title, [this, workingDirectory, branchName] (IDocument *doc) -> DiffEditorController* { @@ -898,7 +906,8 @@ void GitClient::show(const QString &source, const QString &id, const QString &na const QString repoDirectory = VcsManager::findTopLevelForDirectory(workingDirectory); if (!repoDirectory.isEmpty()) workingDirectory = repoDirectory; - const QString documentId = "Show:" + id; + const QString documentId = QLatin1String(Constants::GIT_PLUGIN) + + QLatin1String(".Show.") + id; requestReload(documentId, source, title, [this, workingDirectory, id] (IDocument *doc) -> DiffEditorController* { diff --git a/src/plugins/git/gitconstants.h b/src/plugins/git/gitconstants.h index a4fce44839..6d81196c32 100644 --- a/src/plugins/git/gitconstants.h +++ b/src/plugins/git/gitconstants.h @@ -30,6 +30,8 @@ namespace Git { namespace Constants { +const char GIT_PLUGIN[] = "GitPlugin"; + const char GIT_COMMAND_LOG_EDITOR_ID[] = "Git Command Log Editor"; const char GIT_COMMAND_LOG_EDITOR_DISPLAY_NAME[] = QT_TRANSLATE_NOOP("VCS", "Git Command Log Editor"); const char GIT_LOG_EDITOR_ID[] = "Git File Log Editor"; diff --git a/src/plugins/git/gitgrep.cpp b/src/plugins/git/gitgrep.cpp index cf961487d6..8bb26b244e 100644 --- a/src/plugins/git/gitgrep.cpp +++ b/src/plugins/git/gitgrep.cpp @@ -25,6 +25,7 @@ #include "gitgrep.h" #include "gitclient.h" +#include "gitconstants.h" #include "gitplugin.h" #include <coreplugin/editormanager/editormanager.h> @@ -294,8 +295,12 @@ IEditor *GitGrep::openEditor(const SearchResultItem &item, if (fileContent == content) return nullptr; // open the file for read/write } + + const QString documentId = QLatin1String(Git::Constants::GIT_PLUGIN) + + QLatin1String(".GitShow.") + params.ref + + QLatin1String(".") + relativePath; QString title = tr("Git Show %1:%2").arg(params.ref).arg(relativePath); - IEditor *editor = EditorManager::openEditorWithContents(Id(), &title, content, title, + IEditor *editor = EditorManager::openEditorWithContents(Id(), &title, content, documentId, EditorManager::DoNotSwitchToDesignMode); editor->gotoLine(item.mainRange.begin.line, item.mainRange.begin.column); editor->document()->setTemporary(true); diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp index 5e979a8a3e..295796e5a3 100644 --- a/src/plugins/qmljseditor/qmljseditor.cpp +++ b/src/plugins/qmljseditor/qmljseditor.cpp @@ -688,17 +688,19 @@ void QmlJSEditorWidget::inspectElementUnderCursor() const const CppComponentValue *cppValue = findCppComponentToInspect(semanticInfo, cursorPosition); if (!cppValue) { QString title = tr("Code Model Not Available"); - const QString nothingToShow = QStringLiteral("nothingToShow"); + const QString documentId = Constants::QML_JS_EDITOR_PLUGIN + QStringLiteral(".NothingToShow"); EditorManager::openEditorWithContents(Core::Constants::K_DEFAULT_TEXT_EDITOR_ID, &title, - tr("Code model not available.").toUtf8(), nothingToShow, + tr("Code model not available.").toUtf8(), documentId, EditorManager::IgnoreNavigationHistory); return; } QString title = tr("Code Model of %1").arg(cppValue->metaObject()->className()); + const QString documentId = Constants::QML_JS_EDITOR_PLUGIN + QStringLiteral(".Class.") + + cppValue->metaObject()->className(); IEditor *outputEditor = EditorManager::openEditorWithContents( Core::Constants::K_DEFAULT_TEXT_EDITOR_ID, &title, QByteArray(), - cppValue->metaObject()->className(), EditorManager::IgnoreNavigationHistory); + documentId, EditorManager::IgnoreNavigationHistory); if (!outputEditor) return; diff --git a/src/plugins/qmljseditor/qmljseditorconstants.h b/src/plugins/qmljseditor/qmljseditorconstants.h index bfebc16d47..c1a78898b5 100644 --- a/src/plugins/qmljseditor/qmljseditorconstants.h +++ b/src/plugins/qmljseditor/qmljseditorconstants.h @@ -30,6 +30,8 @@ namespace QmlJSEditor { namespace Constants { +const char QML_JS_EDITOR_PLUGIN[] = "QmlJSEditorPlugin"; + const char M_CONTEXT[] = "QML JS Editor.ContextMenu"; const char M_REFACTORING_MENU_INSERTION_POINT[] = "QmlJSEditor.RefactorGroup"; diff --git a/src/plugins/subversion/subversionclient.cpp b/src/plugins/subversion/subversionclient.cpp index 1b01c85b67..d6b4c89e51 100644 --- a/src/plugins/subversion/subversionclient.cpp +++ b/src/plugins/subversion/subversionclient.cpp @@ -300,7 +300,8 @@ void SubversionClient::diff(const QString &workingDirectory, const QStringList & Q_UNUSED(extraOptions); const QString vcsCmdString = vcsCommandString(DiffCommand); - const QString documentId = VcsBaseEditor::getTitleId(workingDirectory, files); + const QString documentId = QLatin1String(Constants::SUBVERSION_PLUGIN) + + QLatin1String(".Diff.") + VcsBaseEditor::getTitleId(workingDirectory, files); const QString title = vcsEditorTitle(vcsCmdString, documentId); DiffController *controller = findOrCreateDiffEditor(documentId, workingDirectory, title, @@ -328,7 +329,8 @@ void SubversionClient::log(const QString &workingDir, void SubversionClient::describe(const QString &workingDirectory, int changeNumber, const QString &title) { - const QString documentId = VcsBaseEditor::editorTag(DiffOutput, + const QString documentId = QLatin1String(Constants::SUBVERSION_PLUGIN) + + QLatin1String(".Describe.") + VcsBaseEditor::editorTag(DiffOutput, workingDirectory, QStringList(), QString::number(changeNumber)); diff --git a/src/plugins/subversion/subversionconstants.h b/src/plugins/subversion/subversionconstants.h index 5b52cbbb90..13c0ef4167 100644 --- a/src/plugins/subversion/subversionconstants.h +++ b/src/plugins/subversion/subversionconstants.h @@ -30,6 +30,8 @@ namespace Subversion { namespace Constants { +const char SUBVERSION_PLUGIN[] = "SubversionPlugin"; + const char NON_INTERACTIVE_OPTION[] = "--non-interactive"; enum { debug = 0 }; |