diff options
author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2022-12-11 11:49:17 +0100 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2022-12-11 11:15:15 +0000 |
commit | 32e824c76257c21ee4a5d036ecb7bfcbf6664448 (patch) | |
tree | dd8fb47476b3fdf4fc0d73753f84e9ae0ef5f961 | |
parent | db85862a8c035093ca2c33b0fa9e90546b24855c (diff) | |
download | qt-creator-32e824c76257c21ee4a5d036ecb7bfcbf6664448.tar.gz |
VcsBase: Don't return editor from annotate()
Take int firstLine as last arg instead. Switch the order of
3rd and 4th args as most callers provide lineNumber
and don't provide revision.
Change-Id: Iab60c1068a4d9829d10219af39bf3dcbf51e37bb
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
-rw-r--r-- | src/plugins/bazaar/bazaarclient.cpp | 10 | ||||
-rw-r--r-- | src/plugins/bazaar/bazaarclient.h | 6 | ||||
-rw-r--r-- | src/plugins/bazaar/bazaarplugin.cpp | 2 | ||||
-rw-r--r-- | src/plugins/git/gitclient.cpp | 22 | ||||
-rw-r--r-- | src/plugins/git/gitclient.h | 6 | ||||
-rw-r--r-- | src/plugins/git/gitplugin.cpp | 9 | ||||
-rw-r--r-- | src/plugins/mercurial/mercurialclient.cpp | 8 | ||||
-rw-r--r-- | src/plugins/mercurial/mercurialclient.h | 6 | ||||
-rw-r--r-- | src/plugins/mercurial/mercurialplugin.cpp | 4 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseclient.cpp | 10 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseclient.h | 16 |
11 files changed, 45 insertions, 54 deletions
diff --git a/src/plugins/bazaar/bazaarclient.cpp b/src/plugins/bazaar/bazaarclient.cpp index 8b9baf0ff9..d167b3b0c4 100644 --- a/src/plugins/bazaar/bazaarclient.cpp +++ b/src/plugins/bazaar/bazaarclient.cpp @@ -141,12 +141,12 @@ void BazaarClient::commit(const FilePath &repositoryRoot, const QStringList &fil QStringList(extraOptions) << QLatin1String("-F") << commitMessageFile); } -VcsBaseEditorWidget *BazaarClient::annotate( - const FilePath &workingDir, const QString &file, const QString &revision, - int lineNumber, const QStringList &extraOptions) +void BazaarClient::annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber, const QString &revision, + const QStringList &extraOptions, int firstLine) { - return VcsBaseClient::annotate(workingDir, file, revision, lineNumber, - QStringList(extraOptions) << QLatin1String("--long")); + VcsBaseClient::annotate(workingDir, file, lineNumber, revision, + QStringList(extraOptions) << QLatin1String("--long"), firstLine); } bool BazaarClient::isVcsDirectory(const FilePath &filePath) const diff --git a/src/plugins/bazaar/bazaarclient.h b/src/plugins/bazaar/bazaarclient.h index c59ca79bed..ad6cfb8832 100644 --- a/src/plugins/bazaar/bazaarclient.h +++ b/src/plugins/bazaar/bazaarclient.h @@ -22,9 +22,9 @@ public: const QStringList &extraOptions = {}); void commit(const Utils::FilePath &repositoryRoot, const QStringList &files, const QString &commitMessageFile, const QStringList &extraOptions = {}) override; - VcsBase::VcsBaseEditorWidget *annotate( - const Utils::FilePath &workingDir, const QString &file, const QString &revision = {}, - int lineNumber = -1, const QStringList &extraOptions ={}) override; + void annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber = -1, const QString &revision = {}, + const QStringList &extraOptions = {}, int firstLine = -1) override; bool isVcsDirectory(const Utils::FilePath &filePath) const; Utils::FilePath findTopLevelForFile(const Utils::FilePath &file) const override; bool managesFile(const Utils::FilePath &workingDirectory, const QString &fileName) const; diff --git a/src/plugins/bazaar/bazaarplugin.cpp b/src/plugins/bazaar/bazaarplugin.cpp index 8c1799c744..c5f0f6a4f6 100644 --- a/src/plugins/bazaar/bazaarplugin.cpp +++ b/src/plugins/bazaar/bazaarplugin.cpp @@ -931,7 +931,7 @@ bool BazaarPluginPrivate::vcsCreateRepository(const FilePath &directory) void BazaarPluginPrivate::vcsAnnotate(const FilePath &file, int line) { - m_client.annotate(file.parentDir(), file.fileName(), QString(), line); + m_client.annotate(file.parentDir(), file.fileName(), line); } VcsCommand *BazaarPluginPrivate::createInitialCheckoutCommand(const QString &url, diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index bcdc04a7d4..2c32f8ac85 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -1291,27 +1291,24 @@ void GitClient::archive(const FilePath &workingDirectory, QString commit) RunFlags::ShowStdOut); } -VcsBaseEditorWidget *GitClient::annotate( - const FilePath &workingDir, const QString &file, const QString &revision, - int lineNumber, const QStringList &extraOptions) +void GitClient::annotate(const Utils::FilePath &workingDir, const QString &file, int lineNumber, + const QString &revision, const QStringList &extraOptions, int firstLine) { const Id editorId = Git::Constants::GIT_BLAME_EDITOR_ID; const QString id = VcsBaseEditor::getTitleId(workingDir, {file}, revision); const QString title = Tr::tr("Git Blame \"%1\"").arg(id); const QString sourceFile = VcsBaseEditor::getSource(workingDir, file); - VcsBaseEditorWidget *editor - = createVcsEditor(editorId, title, sourceFile, codecFor(CodecSource, FilePath::fromString(sourceFile)), - "blameFileName", id); + VcsBaseEditorWidget *editor = createVcsEditor(editorId, title, sourceFile, + codecFor(CodecSource, FilePath::fromString(sourceFile)), "blameFileName", id); VcsBaseEditorConfig *argWidget = editor->editorConfig(); if (!argWidget) { argWidget = new GitBlameArgumentsWidget(settings(), editor->toolBar()); argWidget->setBaseArguments(extraOptions); - connect(argWidget, &VcsBaseEditorConfig::commandExecutionRequested, this, - [=] { - const int line = VcsBaseEditor::lineNumberOfCurrentEditor(); - annotate(workingDir, file, revision, line, extraOptions); - } ); + connect(argWidget, &VcsBaseEditorConfig::commandExecutionRequested, this, [=] { + const int line = VcsBaseEditor::lineNumberOfCurrentEditor(); + annotate(workingDir, file, line, revision, extraOptions); + }); editor->setEditorConfig(argWidget); } @@ -1322,8 +1319,9 @@ VcsBaseEditorWidget *GitClient::annotate( arguments << revision; arguments << "--" << file; editor->setDefaultLineNumber(lineNumber); + if (firstLine > 0) + editor->setFirstLineNumber(firstLine); vcsExecWithEditor(workingDir, arguments, editor); - return editor; } void GitClient::checkout(const FilePath &workingDirectory, const QString &ref, StashMode stashMode, diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h index 15e7e5f8a2..29747ea0ac 100644 --- a/src/plugins/git/gitclient.h +++ b/src/plugins/git/gitclient.h @@ -152,9 +152,9 @@ public: void log(const Utils::FilePath &workingDirectory, const QString &fileName = {}, bool enableAnnotationContextMenu = false, const QStringList &args = {}); void reflog(const Utils::FilePath &workingDirectory, const QString &branch = {}); - VcsBase::VcsBaseEditorWidget *annotate(const Utils::FilePath &workingDir, const QString &file, - const QString &revision = {}, int lineNumber = -1, - const QStringList &extraOptions = {}) override; + void annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber = -1, const QString &revision = {}, + const QStringList &extraOptions = {}, int firstLine = -1) override; void reset(const Utils::FilePath &workingDirectory, const QString &argument, const QString &commit = {}); void removeStaleRemoteBranches(const Utils::FilePath &workingDirectory, const QString &remote); void recoverDeletedFiles(const Utils::FilePath &workingDirectory); diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp index 24c407fb4f..0ba8b77d96 100644 --- a/src/plugins/git/gitplugin.cpp +++ b/src/plugins/git/gitplugin.cpp @@ -1133,11 +1133,8 @@ void GitPluginPrivate::blameFile() const FilePath fileName = FilePath::fromString(state.currentFile()).canonicalPath(); FilePath topLevel; VcsManager::findVersionControlForDirectory(fileName.parentDir(), &topLevel); - VcsBaseEditorWidget *editor = m_gitClient.annotate( - topLevel, fileName.relativeChildPath(topLevel).toString(), - {}, lineNumber, extraOptions); - if (firstLine > 0) - editor->setFirstLineNumber(firstLine); + m_gitClient.annotate(topLevel, fileName.relativeChildPath(topLevel).toString(), + lineNumber, {}, extraOptions, firstLine); } void GitPluginPrivate::logProject() @@ -2126,7 +2123,7 @@ FilePaths GitPluginPrivate::unmanagedFiles(const FilePaths &filePaths) const void GitPluginPrivate::vcsAnnotate(const FilePath &filePath, int line) { - m_gitClient.annotate(filePath.absolutePath(), filePath.fileName(), {}, line); + m_gitClient.annotate(filePath.absolutePath(), filePath.fileName(), line); } void GitPlugin::emitFilesChanged(const QStringList &l) diff --git a/src/plugins/mercurial/mercurialclient.cpp b/src/plugins/mercurial/mercurialclient.cpp index 265320b98b..35e933272b 100644 --- a/src/plugins/mercurial/mercurialclient.cpp +++ b/src/plugins/mercurial/mercurialclient.cpp @@ -279,13 +279,13 @@ void MercurialClient::outgoing(const FilePath &repositoryRoot) enqueueJob(createCommand(repositoryRoot, editor), args); } -VcsBaseEditorWidget *MercurialClient::annotate( - const FilePath &workingDir, const QString &file, const QString &revision, - int lineNumber, const QStringList &extraOptions) +void MercurialClient::annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber, const QString &revision, + const QStringList &extraOptions, int firstLine) { QStringList args(extraOptions); args << QLatin1String("-u") << QLatin1String("-c") << QLatin1String("-d"); - return VcsBaseClient::annotate(workingDir, file, revision, lineNumber, args); + VcsBaseClient::annotate(workingDir, file, lineNumber, revision, args, firstLine); } void MercurialClient::commit(const FilePath &repositoryRoot, const QStringList &files, diff --git a/src/plugins/mercurial/mercurialclient.h b/src/plugins/mercurial/mercurialclient.h index 2351d3e761..8ff7e2975d 100644 --- a/src/plugins/mercurial/mercurialclient.h +++ b/src/plugins/mercurial/mercurialclient.h @@ -38,9 +38,9 @@ public: void outgoing(const Utils::FilePath &repositoryRoot); bool managesFile(const Utils::FilePath &workingDirectory, const QString &fileName) const; - VcsBase::VcsBaseEditorWidget *annotate( - const Utils::FilePath &workingDir, const QString &file, const QString &revision = {}, - int lineNumber = -1, const QStringList &extraOptions = {}) override; + void annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber = -1, const QString &revision = {}, + const QStringList &extraOptions = {}, int firstLine = -1) override; void commit(const Utils::FilePath &repositoryRoot, const QStringList &files, const QString &commitMessageFile, const QStringList &extraOptions = QStringList()) override; diff --git a/src/plugins/mercurial/mercurialplugin.cpp b/src/plugins/mercurial/mercurialplugin.cpp index 27d3ab882a..f5e7e824b3 100644 --- a/src/plugins/mercurial/mercurialplugin.cpp +++ b/src/plugins/mercurial/mercurialplugin.cpp @@ -351,7 +351,7 @@ void MercurialPluginPrivate::annotateCurrentFile() currentLine = editor->currentLine(); const VcsBasePluginState state = currentState(); QTC_ASSERT(state.hasFile(), return); - m_client.annotate(state.currentFileTopLevel(), state.relativeCurrentFile(), QString(), currentLine); + m_client.annotate(state.currentFileTopLevel(), state.relativeCurrentFile(), currentLine); } void MercurialPluginPrivate::diffCurrentFile() @@ -775,7 +775,7 @@ bool MercurialPluginPrivate::vcsCreateRepository(const FilePath &directory) void MercurialPluginPrivate::vcsAnnotate(const FilePath &filePath, int line) { - m_client.annotate(filePath.parentDir(), filePath.fileName(), QString(), line); + m_client.annotate(filePath.parentDir(), filePath.fileName(), line); } VcsCommand *MercurialPluginPrivate::createInitialCheckoutCommand(const QString &url, diff --git a/src/plugins/vcsbase/vcsbaseclient.cpp b/src/plugins/vcsbase/vcsbaseclient.cpp index a6dc3b61cd..c32f10b912 100644 --- a/src/plugins/vcsbase/vcsbaseclient.cpp +++ b/src/plugins/vcsbase/vcsbaseclient.cpp @@ -149,7 +149,7 @@ void VcsBaseClientImpl::annotateRevisionRequested(const FilePath &workingDirecto const int blankPos = changeCopy.indexOf(QLatin1Char(' ')); if (blankPos != -1) changeCopy.truncate(blankPos); - annotate(workingDirectory, file, changeCopy, line); + annotate(workingDirectory, file, line, changeCopy); } void VcsBaseClientImpl::vcsExecWithHandler(const FilePath &workingDirectory, @@ -324,10 +324,11 @@ bool VcsBaseClient::synchronousPush(const FilePath &workingDir, == ProcessResult::FinishedWithSuccess; } -VcsBaseEditorWidget *VcsBaseClient::annotate( - const FilePath &workingDir, const QString &file, const QString &revision /* = QString() */, - int lineNumber /* = -1 */, const QStringList &extraOptions) +void VcsBaseClient::annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber /* = -1 */, const QString &revision /* = {} */, + const QStringList &extraOptions /* = {} */, int firstLine /* = -1 */) { + Q_UNUSED(firstLine) const QString vcsCmdString = vcsCommandString(AnnotateCommand); QStringList args; args << vcsCmdString << revisionSpec(revision) << extraOptions << file; @@ -343,7 +344,6 @@ VcsBaseEditorWidget *VcsBaseClient::annotate( VcsCommand *cmd = createCommand(workingDir, editor); editor->setDefaultLineNumber(lineNumber); enqueueJob(cmd, args); - return editor; } void VcsBaseClient::diff(const FilePath &workingDir, const QStringList &files, diff --git a/src/plugins/vcsbase/vcsbaseclient.h b/src/plugins/vcsbase/vcsbaseclient.h index 6895d35130..f4aa9d1b54 100644 --- a/src/plugins/vcsbase/vcsbaseclient.h +++ b/src/plugins/vcsbase/vcsbaseclient.h @@ -62,11 +62,9 @@ public: virtual Utils::Environment processEnvironment() const; // VCS functionality: - virtual VcsBaseEditorWidget *annotate(const Utils::FilePath &workingDir, - const QString &file, - const QString &revision = {}, - int lineNumber = -1, - const QStringList &extraOptions = {}) = 0; + virtual void annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber = -1, const QString &revision = {}, + const QStringList &extraOptions = {}, int firstLine = -1) = 0; static QStringList splitLines(const QString &s); @@ -140,11 +138,9 @@ public: virtual bool synchronousPush(const Utils::FilePath &workingDir, const QString &dstLocation, const QStringList &extraOptions = {}); - VcsBaseEditorWidget *annotate(const Utils::FilePath &workingDir, - const QString &file, - const QString &revision = {}, - int lineNumber = -1, - const QStringList &extraOptions = {}) override; + void annotate(const Utils::FilePath &workingDir, const QString &file, + int lineNumber = -1, const QString &revision = {}, + const QStringList &extraOptions = {}, int firstLine = -1) override; virtual void diff(const Utils::FilePath &workingDir, const QStringList &files = {}, const QStringList &extraOptions = {}); |