summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOrgad Shaneh <orgad.shaneh@audiocodes.com>2013-04-30 21:29:25 +0300
committerOrgad Shaneh <orgads@gmail.com>2013-05-02 16:52:10 +0200
commit06da25f6100236b2ce1cde58d044f3b1cb21fe4d (patch)
treec5ef5a8dcfd62919cd0fae0f6e443262493ffcb0 /src
parentcb055c1d0f9410553d2cc484e4e5257079867447 (diff)
downloadqt-creator-06da25f6100236b2ce1cde58d044f3b1cb21fe4d.tar.gz
Git: Add commit type to CommitData
Change-Id: I900f3dd89eeeac61e29604ac459d36ecc6c0aa8f Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/git/commitdata.cpp4
-rw-r--r--src/plugins/git/commitdata.h4
-rw-r--r--src/plugins/git/gitclient.cpp7
-rw-r--r--src/plugins/git/gitclient.h5
-rw-r--r--src/plugins/git/gitplugin.cpp11
-rw-r--r--src/plugins/git/gitplugin.h2
-rw-r--r--src/plugins/git/gitsubmiteditor.cpp12
-rw-r--r--src/plugins/git/gitsubmiteditor.h1
8 files changed, 23 insertions, 23 deletions
diff --git a/src/plugins/git/commitdata.cpp b/src/plugins/git/commitdata.cpp
index 77b296a07f..c7e9097d51 100644
--- a/src/plugins/git/commitdata.cpp
+++ b/src/plugins/git/commitdata.cpp
@@ -76,6 +76,10 @@ QDebug operator<<(QDebug d, const GitSubmitEditorPanelData &data)
return d;
}
+CommitData::CommitData(CommitType type) : commitType(type)
+{
+}
+
void CommitData::clear()
{
panelInfo.clear();
diff --git a/src/plugins/git/commitdata.h b/src/plugins/git/commitdata.h
index 746d5d259a..6688843dd5 100644
--- a/src/plugins/git/commitdata.h
+++ b/src/plugins/git/commitdata.h
@@ -30,6 +30,8 @@
#ifndef COMMITDATA_H
#define COMMITDATA_H
+#include "gitsettings.h" // CommitType
+
#include <QStringList>
#include <QPair>
@@ -85,6 +87,7 @@ Q_DECLARE_FLAGS(FileStates, FileState)
class CommitData
{
public:
+ CommitData(CommitType type = SimpleCommit);
// A pair of state string/file name ('modified', 'file.cpp').
typedef QPair<FileStates, QString> StateFilePair;
@@ -99,6 +102,7 @@ public:
static QString stateDisplayName(const FileStates &state);
+ CommitType commitType;
QString amendSHA1;
QString commitEncoding;
GitSubmitEditorPanelInfo panelInfo;
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index 9ab41a2fd1..c1d9161551 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -2018,7 +2018,6 @@ QString GitClient::gitBinaryPath(bool *ok, QString *errorMessage) const
}
bool GitClient::getCommitData(const QString &workingDirectory,
- CommitType commitType,
QString *commitTemplate,
CommitData *commitData,
QString *errorMessage)
@@ -2047,7 +2046,7 @@ bool GitClient::getCommitData(const QString &workingDirectory,
case StatusChanged:
break;
case StatusUnchanged:
- if (commitType == AmendCommit)
+ if (commitData->commitType == AmendCommit) // amend might be run just for the commit message
break;
*errorMessage = msgNoChangedFiles();
return false;
@@ -2081,7 +2080,7 @@ bool GitClient::getCommitData(const QString &workingDirectory,
}
commitData->files = filteredFiles;
- if (commitData->files.isEmpty() && commitType != AmendCommit) {
+ if (commitData->files.isEmpty() && commitData->commitType != AmendCommit) {
*errorMessage = msgNoChangedFiles();
return false;
}
@@ -2090,7 +2089,7 @@ bool GitClient::getCommitData(const QString &workingDirectory,
commitData->commitEncoding = readConfigValue(workingDirectory, QLatin1String("i18n.commitEncoding"));
// Get the commit template or the last commit message
- switch (commitType) {
+ switch (commitData->commitType) {
case AmendCommit: {
// Amend: get last commit data as "SHA1<tab>author<tab>email<tab>message".
QStringList args(QLatin1String("log"));
diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h
index 6564ee6437..377b4240fb 100644
--- a/src/plugins/git/gitclient.h
+++ b/src/plugins/git/gitclient.h
@@ -261,9 +261,8 @@ public:
QString readConfigValue(const QString &workingDirectory, const QString &configVar) const;
- bool getCommitData(const QString &workingDirectory, CommitType commitType,
- QString *commitTemplate, CommitData *commitData,
- QString *errorMessage);
+ bool getCommitData(const QString &workingDirectory, QString *commitTemplate,
+ CommitData *commitData, QString *errorMessage);
bool addAndCommit(const QString &workingDirectory,
const GitSubmitEditorPanelData &data,
diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp
index c62e57dbaa..bad45c3b37 100644
--- a/src/plugins/git/gitplugin.cpp
+++ b/src/plugins/git/gitplugin.cpp
@@ -896,8 +896,8 @@ void GitPlugin::startCommit(CommitType commitType)
QTC_ASSERT(state.hasTopLevel(), return);
QString errorMessage, commitTemplate;
- CommitData data;
- if (!m_gitClient->getCommitData(state.topLevel(), commitType, &commitTemplate, &data, &errorMessage)) {
+ CommitData data(commitType);
+ if (!m_gitClient->getCommitData(state.topLevel(), &commitTemplate, &data, &errorMessage)) {
VcsBase::VcsBaseOutputWindow::instance()->append(errorMessage);
return;
}
@@ -917,7 +917,7 @@ void GitPlugin::startCommit(CommitType commitType)
return;
}
m_commitMessageFileName = saver.fileName();
- openSubmitEditor(m_commitMessageFileName, data, commitType);
+ openSubmitEditor(m_commitMessageFileName, data);
}
void GitPlugin::updateVersionWarning()
@@ -940,7 +940,7 @@ void GitPlugin::updateVersionWarning()
Core::InfoBarEntry::GlobalSuppressionEnabled));
}
-Core::IEditor *GitPlugin::openSubmitEditor(const QString &fileName, const CommitData &cd, CommitType commitType)
+Core::IEditor *GitPlugin::openSubmitEditor(const QString &fileName, const CommitData &cd)
{
Core::IEditor *editor = Core::EditorManager::openEditor(fileName, Constants::GITSUBMITEDITOR_ID,
Core::EditorManager::ModeSwitch);
@@ -952,9 +952,8 @@ Core::IEditor *GitPlugin::openSubmitEditor(const QString &fileName, const Commit
submitEditor->registerActions(m_undoAction, m_redoAction, m_submitCurrentAction, m_diffSelectedFilesAction);
submitEditor->setCommitData(cd);
submitEditor->setCheckScriptWorkingDirectory(m_submitRepository);
- const QString title = (commitType == AmendCommit) ? tr("Amend %1").arg(cd.amendSHA1) : tr("Git Commit");
+ const QString title = (cd.commitType == AmendCommit) ? tr("Amend %1").arg(cd.amendSHA1) : tr("Git Commit");
submitEditor->setDisplayName(title);
- submitEditor->setCommitType(commitType);
connect(submitEditor, SIGNAL(diff(QStringList,QStringList)), this, SLOT(submitEditorDiff(QStringList,QStringList)));
connect(submitEditor, SIGNAL(merge(QStringList)), this, SLOT(submitEditorMerge(QStringList)));
return editor;
diff --git a/src/plugins/git/gitplugin.h b/src/plugins/git/gitplugin.h
index da5f9a8843..34e9f289a8 100644
--- a/src/plugins/git/gitplugin.h
+++ b/src/plugins/git/gitplugin.h
@@ -192,7 +192,7 @@ private:
void updateContinueAndAbortCommands();
void updateRepositoryBrowserAction();
bool isCommitEditorOpen() const;
- Core::IEditor *openSubmitEditor(const QString &fileName, const CommitData &cd, CommitType commitType);
+ Core::IEditor *openSubmitEditor(const QString &fileName, const CommitData &cd);
void cleanCommitMessageFile();
void cleanRepository(const QString &directory);
void applyPatch(const QString &workingDirectory, QString file = QString());
diff --git a/src/plugins/git/gitsubmiteditor.cpp b/src/plugins/git/gitsubmiteditor.cpp
index bb7a93a887..da3d1df4b8 100644
--- a/src/plugins/git/gitsubmiteditor.cpp
+++ b/src/plugins/git/gitsubmiteditor.cpp
@@ -110,6 +110,8 @@ void GitSubmitEditor::setCommitData(const CommitData &d)
m_commitEncoding = d.commitEncoding;
m_workingDirectory = d.panelInfo.repository;
+ m_commitType = d.commitType;
+ setEmptyFileListEnabled(m_commitType == AmendCommit); // Allow for just correcting the message
m_model = new GitSubmitFileModel(this);
if (!d.files.isEmpty()) {
@@ -133,12 +135,6 @@ void GitSubmitEditor::setCommitData(const CommitData &d)
setFileModel(m_model, d.panelInfo.repository);
}
-void GitSubmitEditor::setCommitType(CommitType commitType)
-{
- m_commitType = commitType;
- setEmptyFileListEnabled(commitType == AmendCommit); // Allow for just correcting the message
-}
-
void GitSubmitEditor::slotDiffSelected(const QList<int> &rows)
{
// Sort it apart into unmerged/staged/unstaged files
@@ -167,8 +163,8 @@ void GitSubmitEditor::updateFileModel()
return;
GitClient *client = GitPlugin::instance()->gitClient();
QString errorMessage, commitTemplate;
- CommitData data;
- if (client->getCommitData(m_workingDirectory, m_commitType, &commitTemplate, &data, &errorMessage)) {
+ CommitData data(m_commitType);
+ if (client->getCommitData(m_workingDirectory, &commitTemplate, &data, &errorMessage)) {
setCommitData(data);
} else {
VcsBase::VcsBaseOutputWindow::instance()->append(errorMessage);
diff --git a/src/plugins/git/gitsubmiteditor.h b/src/plugins/git/gitsubmiteditor.h
index ca6e0cf7f1..e2d79e5fb7 100644
--- a/src/plugins/git/gitsubmiteditor.h
+++ b/src/plugins/git/gitsubmiteditor.h
@@ -54,7 +54,6 @@ public:
explicit GitSubmitEditor(const VcsBase::VcsBaseSubmitEditorParameters *parameters, QWidget *parent);
void setCommitData(const CommitData &);
- void setCommitType(CommitType commitType);
GitSubmitEditorPanelData panelData() const;
bool forceClose() const { return m_forceClose; }