summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/git/gitclient.cpp27
-rw-r--r--src/plugins/git/gitclient.h2
-rw-r--r--src/plugins/git/gitplugin.cpp4
-rw-r--r--src/plugins/vcsbase/vcsbaseplugin.cpp9
-rw-r--r--src/plugins/vcsbase/vcsbaseplugin.h2
5 files changed, 21 insertions, 23 deletions
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index 3ad47bd620..8b89f7f7be 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -637,7 +637,7 @@ public:
const QString &directory,
bool enableAnnotationContextMenu,
const QStringList &args,
- const QStringList &fileNames) :
+ const QString &fileName) :
BaseGitDiffArgumentsWidget(client, directory, args),
m_client(client),
m_workingDirectory(directory),
@@ -657,24 +657,24 @@ public:
QToolButton *graphButton = addToggleButton(graphArguments, tr("Graph"),
tr("Show textual graph log."));
mapSetting(graphButton, m_client->settings()->boolPointer(GitSettings::graphLogKey));
- setFileNames(fileNames);
+ setFileName(fileName);
}
- void setFileNames(const QStringList &fileNames)
+ void setFileName(const QString &fileNames)
{
- m_fileNames = fileNames;
+ m_fileName = fileNames;
}
void executeCommand()
{
- m_client->log(m_workingDirectory, m_fileNames, m_enableAnnotationContextMenu, baseArguments());
+ m_client->log(m_workingDirectory, m_fileName, m_enableAnnotationContextMenu, baseArguments());
}
private:
GitClient *m_client;
QString m_workingDirectory;
bool m_enableAnnotationContextMenu;
- QStringList m_fileNames;
+ QString m_fileName;
};
class ConflictHandler : public QObject
@@ -1113,20 +1113,19 @@ void GitClient::status(const QString &workingDirectory)
Qt::QueuedConnection);
}
-void GitClient::log(const QString &workingDirectory, const QStringList &fileNames,
+void GitClient::log(const QString &workingDirectory, const QString &fileName,
bool enableAnnotationContextMenu, const QStringList &args)
{
- const QString msgArg = fileNames.empty() ? workingDirectory :
- fileNames.join(QLatin1String(", "));
+ const QString msgArg = fileName.isEmpty() ? workingDirectory : fileName;
const QString title = tr("Git Log \"%1\"").arg(msgArg);
const Core::Id editorId = Git::Constants::GIT_LOG_EDITOR_ID;
- const QString sourceFile = VcsBase::VcsBaseEditorWidget::getSource(workingDirectory, fileNames);
+ const QString sourceFile = VcsBase::VcsBaseEditorWidget::getSource(workingDirectory, fileName);
VcsBase::VcsBaseEditorWidget *editor = findExistingVCSEditor("logFileName", sourceFile);
if (!editor)
editor = createVcsEditor(editorId, title, sourceFile, CodecLogOutput, "logFileName", sourceFile,
new GitLogArgumentsWidget(this, workingDirectory,
enableAnnotationContextMenu,
- args, fileNames));
+ args, fileName));
editor->setFileLogAnnotateEnabled(enableAnnotationContextMenu);
editor->setDiffBaseDirectory(workingDirectory);
@@ -1140,13 +1139,13 @@ void GitClient::log(const QString &workingDirectory, const QStringList &fileName
GitLogArgumentsWidget *argWidget = qobject_cast<GitLogArgumentsWidget *>(editor->configurationWidget());
argWidget->setBaseArguments(args);
- argWidget->setFileNames(fileNames);
+ argWidget->setFileName(fileName);
QStringList userArgs = argWidget->arguments();
arguments.append(userArgs);
- if (!fileNames.isEmpty())
- arguments << QLatin1String("--") << fileNames;
+ if (!fileName.isEmpty())
+ arguments << QLatin1String("--") << fileName;
executeGit(workingDirectory, arguments, editor);
}
diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h
index 47e27ccf5b..fa7ac9a921 100644
--- a/src/plugins/git/gitclient.h
+++ b/src/plugins/git/gitclient.h
@@ -146,7 +146,7 @@ public:
void merge(const QString &workingDirectory, const QStringList &unmergedFileNames = QStringList());
void status(const QString &workingDirectory);
- void log(const QString &workingDirectory, const QStringList &fileNames = QStringList(),
+ void log(const QString &workingDirectory, const QString &fileName = QString(),
bool enableAnnotationContextMenu = false, const QStringList &args = QStringList());
void blame(const QString &workingDirectory, const QStringList &args, const QString &fileName,
const QString &revision = QString(), int lineNumber = -1);
diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp
index 6801a97390..1692b780d2 100644
--- a/src/plugins/git/gitplugin.cpp
+++ b/src/plugins/git/gitplugin.cpp
@@ -744,7 +744,7 @@ void GitPlugin::diffCurrentProject()
{
const VcsBase::VcsBasePluginState state = currentState();
QTC_ASSERT(state.hasProject(), return);
- m_gitClient->diff(state.currentProjectTopLevel(), state.relativeCurrentProject());
+ m_gitClient->diff(state.currentProjectTopLevel(), QStringList(state.relativeCurrentProject()));
}
void GitPlugin::diffRepository()
@@ -758,7 +758,7 @@ void GitPlugin::logFile()
{
const VcsBase::VcsBasePluginState state = currentState();
QTC_ASSERT(state.hasFile(), return);
- m_gitClient->log(state.currentFileTopLevel(), QStringList(state.relativeCurrentFile()), true);
+ m_gitClient->log(state.currentFileTopLevel(), state.relativeCurrentFile(), true);
}
void GitPlugin::blameFile()
diff --git a/src/plugins/vcsbase/vcsbaseplugin.cpp b/src/plugins/vcsbase/vcsbaseplugin.cpp
index 9d1905ccc7..e47fb10f06 100644
--- a/src/plugins/vcsbase/vcsbaseplugin.cpp
+++ b/src/plugins/vcsbase/vcsbaseplugin.cpp
@@ -404,13 +404,12 @@ QString VcsBasePluginState::currentProjectTopLevel() const
return data->m_state.currentProjectTopLevel;
}
-QStringList VcsBasePluginState::relativeCurrentProject() const
+QString VcsBasePluginState::relativeCurrentProject() const
{
- QStringList rc;
- QTC_ASSERT(hasProject(), return rc);
+ QTC_ASSERT(hasProject(), return QString());
if (data->m_state.currentProjectTopLevel != data->m_state.currentProjectPath)
- rc.append(QDir(data->m_state.currentProjectTopLevel).relativeFilePath(data->m_state.currentProjectPath));
- return rc;
+ return QDir(data->m_state.currentProjectTopLevel).relativeFilePath(data->m_state.currentProjectPath);
+ return QString();
}
bool VcsBasePluginState::hasTopLevel() const
diff --git a/src/plugins/vcsbase/vcsbaseplugin.h b/src/plugins/vcsbase/vcsbaseplugin.h
index 8c1f5fe39b..f657f55871 100644
--- a/src/plugins/vcsbase/vcsbaseplugin.h
+++ b/src/plugins/vcsbase/vcsbaseplugin.h
@@ -96,7 +96,7 @@ public:
/* Convenience: Returns project path relative to top level if it
* differs from top level (else empty()) as an argument list to do
* eg a 'vcs diff <args>' */
- QStringList relativeCurrentProject() const;
+ QString relativeCurrentProject() const;
// Top level directory for actions on the top level. Preferably
// the file one.