summaryrefslogtreecommitdiff
path: root/src/plugins/git/gitclient.h
diff options
context:
space:
mode:
authorjkobus <jaroslaw.kobus@digia.com>2014-02-13 16:43:28 +0100
committerJarek Kobus <jaroslaw.kobus@digia.com>2014-06-06 12:33:59 +0200
commit8cad94534f97849081bd595da458670d168d6b63 (patch)
tree5575aab843ad47d38a30d5bbc38f1449254eaf4e /src/plugins/git/gitclient.h
parent8cb25f9e3e1afcc1ccfa17966cdcc31a95c02289 (diff)
downloadqt-creator-8cad94534f97849081bd595da458670d168d6b63.tar.gz
Implement unified diff editor
Change-Id: I93e0bfd71a8a650afbe2ca9e0f1f3dbfc9d57db0 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
Diffstat (limited to 'src/plugins/git/gitclient.h')
-rw-r--r--src/plugins/git/gitclient.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h
index 85d50c796c..810019355a 100644
--- a/src/plugins/git/gitclient.h
+++ b/src/plugins/git/gitclient.h
@@ -45,6 +45,7 @@ class QCheckBox;
class QSignalMapper;
class QDebug;
class QProcessEnvironment;
+class QMenu;
QT_END_NAMESPACE
namespace Core { class ICore; }
@@ -58,7 +59,10 @@ namespace VcsBase {
namespace Utils { struct SynchronousProcessResponse; }
-namespace DiffEditor { class DiffEditorDocument; }
+namespace DiffEditor {
+class DiffEditorDocument;
+class DiffEditorController;
+}
namespace Git {
namespace Internal {
@@ -141,7 +145,6 @@ public:
const QStringList &unstagedFileNames,
const QStringList &stagedFileNames = QStringList());
void diffBranch(const QString &workingDirectory,
- const QStringList &diffArgs,
const QString &branchName);
void merge(const QString &workingDirectory, const QStringList &unmergedFileNames = QStringList());
@@ -332,7 +335,6 @@ public:
public slots:
void show(const QString &source,
const QString &id,
- const QStringList &args = QStringList(),
const QString &name = QString());
void saveSettings();
@@ -341,8 +343,13 @@ private slots:
QString change, int lineNumber);
void finishSubmoduleUpdate();
void fetchFinished(const QVariant &cookie);
+ void slotChunkActionsRequested(QMenu *menu, int diffFileIndex, int chunkIndex);
+ void slotStageChunk();
+ void slotUnstageChunk();
private:
+ QString makePatch(int diffFileIndex, int chunkIndex, bool revert) const;
+ void stage(const QString &patch, bool revert);
QByteArray readConfigBytes(const QString &workingDirectory, const QString &configVar) const;
QTextCodec *getSourceCodec(const QString &file) const;
VcsBase::VcsBaseEditorWidget *findExistingVCSEditor(const char *registerDynamicProperty,
@@ -421,6 +428,9 @@ private:
QMap<QString, StashInfo> m_stashInfo;
QStringList m_updatedSubmodules;
bool m_disableEditor;
+ int m_contextDiffFileIndex;
+ int m_contextChunkIndex;
+ QPointer<DiffEditor::DiffEditorController> m_contextDocument;
};
} // namespace Internal