Skip to content
Snippets Groups Projects
Commit e63d1f64 authored by Orgad Shaneh's avatar Orgad Shaneh Committed by Orgad Shaneh
Browse files

Git: Refresh configuration widget if editor is found


Task-number: QTCREATORBUG-9783
Change-Id: Id1092fb9a79dfbf0425be4913241a507afb56a85
Reviewed-by: default avatarTobias Hunger <tobias.hunger@digia.com>
parent bcf9c762
No related branches found
No related tags found
No related merge requests found
...@@ -485,10 +485,16 @@ class GitCommitDiffArgumentsWidget : public BaseGitDiffArgumentsWidget ...@@ -485,10 +485,16 @@ class GitCommitDiffArgumentsWidget : public BaseGitDiffArgumentsWidget
public: public:
GitCommitDiffArgumentsWidget(Git::Internal::GitClient *client, const QString &directory, GitCommitDiffArgumentsWidget(Git::Internal::GitClient *client, const QString &directory,
const QStringList &unstaged, const QStringList &staged) : const QStringList &unstaged, const QStringList &staged) :
BaseGitDiffArgumentsWidget(client, directory, QStringList()), BaseGitDiffArgumentsWidget(client, directory, QStringList())
m_unstagedFileNames(unstaged), {
m_stagedFileNames(staged) setFileNames(unstaged, staged);
{ } }
void setFileNames(const QStringList &unstaged, const QStringList &staged)
{
m_unstagedFileNames = unstaged;
m_stagedFileNames = staged;
}
void executeCommand() void executeCommand()
{ {
...@@ -496,8 +502,8 @@ public: ...@@ -496,8 +502,8 @@ public:
} }
private: private:
const QStringList m_unstagedFileNames; QStringList m_unstagedFileNames;
const QStringList m_stagedFileNames; QStringList m_stagedFileNames;
}; };
class GitFileDiffArgumentsWidget : public BaseGitDiffArgumentsWidget class GitFileDiffArgumentsWidget : public BaseGitDiffArgumentsWidget
...@@ -531,7 +537,7 @@ public: ...@@ -531,7 +537,7 @@ public:
void executeCommand() void executeCommand()
{ {
m_client->diffBranch(m_workingDirectory, arguments(), m_branchName); m_client->diffBranch(m_workingDirectory, baseArguments(), m_branchName);
} }
private: private:
...@@ -566,7 +572,7 @@ public: ...@@ -566,7 +572,7 @@ public:
void executeCommand() void executeCommand()
{ {
m_client->show(m_workingDirectory, m_id, arguments()); m_client->show(m_workingDirectory, m_id, baseArguments());
} }
private: private:
...@@ -611,7 +617,7 @@ public: ...@@ -611,7 +617,7 @@ public:
int line = -1; int line = -1;
if (m_editor) if (m_editor)
line = m_editor->lineNumberOfCurrentEditor(); line = m_editor->lineNumberOfCurrentEditor();
m_client->blame(m_workingDirectory, arguments(), m_fileName, m_revision, line); m_client->blame(m_workingDirectory, baseArguments(), m_fileName, m_revision, line);
} }
private: private:
...@@ -635,8 +641,7 @@ public: ...@@ -635,8 +641,7 @@ public:
BaseGitDiffArgumentsWidget(client, directory, args), BaseGitDiffArgumentsWidget(client, directory, args),
m_client(client), m_client(client),
m_workingDirectory(directory), m_workingDirectory(directory),
m_enableAnnotationContextMenu(enableAnnotationContextMenu), m_enableAnnotationContextMenu(enableAnnotationContextMenu)
m_fileNames(fileNames)
{ {
QTC_ASSERT(!directory.isEmpty(), return); QTC_ASSERT(!directory.isEmpty(), return);
QToolButton *diffButton = addToggleButton(QLatin1String("--patch"), tr("Show Diff"), QToolButton *diffButton = addToggleButton(QLatin1String("--patch"), tr("Show Diff"),
...@@ -652,11 +657,17 @@ public: ...@@ -652,11 +657,17 @@ public:
QToolButton *graphButton = addToggleButton(graphArguments, tr("Graph"), QToolButton *graphButton = addToggleButton(graphArguments, tr("Graph"),
tr("Show textual graph log.")); tr("Show textual graph log."));
mapSetting(graphButton, m_client->settings()->boolPointer(GitSettings::graphLogKey)); mapSetting(graphButton, m_client->settings()->boolPointer(GitSettings::graphLogKey));
setFileNames(fileNames);
}
void setFileNames(const QStringList &fileNames)
{
m_fileNames = fileNames;
} }
void executeCommand() void executeCommand()
{ {
m_client->log(m_workingDirectory, m_fileNames, m_enableAnnotationContextMenu, arguments()); m_client->log(m_workingDirectory, m_fileNames, m_enableAnnotationContextMenu, baseArguments());
} }
private: private:
...@@ -964,6 +975,7 @@ void GitClient::diff(const QString &workingDirectory, ...@@ -964,6 +975,7 @@ void GitClient::diff(const QString &workingDirectory,
} }
GitCommitDiffArgumentsWidget *argWidget = qobject_cast<GitCommitDiffArgumentsWidget *>(editor->configurationWidget()); GitCommitDiffArgumentsWidget *argWidget = qobject_cast<GitCommitDiffArgumentsWidget *>(editor->configurationWidget());
argWidget->setFileNames(unstagedFileNames, stagedFileNames);
QStringList userDiffArgs = argWidget->arguments(); QStringList userDiffArgs = argWidget->arguments();
editor->setDiffBaseDirectory(workingDirectory); editor->setDiffBaseDirectory(workingDirectory);
...@@ -1126,6 +1138,8 @@ void GitClient::log(const QString &workingDirectory, const QStringList &fileName ...@@ -1126,6 +1138,8 @@ void GitClient::log(const QString &workingDirectory, const QStringList &fileName
arguments << QLatin1String("-n") << QString::number(logCount); arguments << QLatin1String("-n") << QString::number(logCount);
GitLogArgumentsWidget *argWidget = qobject_cast<GitLogArgumentsWidget *>(editor->configurationWidget()); GitLogArgumentsWidget *argWidget = qobject_cast<GitLogArgumentsWidget *>(editor->configurationWidget());
argWidget->setBaseArguments(args);
argWidget->setFileNames(fileNames);
QStringList userArgs = argWidget->arguments(); QStringList userArgs = argWidget->arguments();
arguments.append(userArgs); arguments.append(userArgs);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment