diff --git a/src/plugins/diffeditor/diffeditorcontroller.cpp b/src/plugins/diffeditor/diffeditorcontroller.cpp index f75f4620054..c64da4562d7 100644 --- a/src/plugins/diffeditor/diffeditorcontroller.cpp +++ b/src/plugins/diffeditor/diffeditorcontroller.cpp @@ -71,9 +71,10 @@ QString DiffEditorController::revisionFromDescription() const return m_document->description().mid(7, 12); } -QString DiffEditorController::makePatch(bool revert, bool addPrefix) const +QString DiffEditorController::makePatch(PatchOptions options) const { - return m_document->makePatch(m_diffFileIndex, m_chunkIndex, revert, addPrefix); + return m_document->makePatch(m_diffFileIndex, m_chunkIndex, + options & Revert, options & AddPrefix); } Core::IDocument *DiffEditorController::findOrCreateDocument(const QString &vcsId, diff --git a/src/plugins/diffeditor/diffeditorcontroller.h b/src/plugins/diffeditor/diffeditorcontroller.h index b6c8fd77a6f..ebe1151ce1e 100644 --- a/src/plugins/diffeditor/diffeditorcontroller.h +++ b/src/plugins/diffeditor/diffeditorcontroller.h @@ -53,7 +53,13 @@ public: QString revisionFromDescription() const; - QString makePatch(bool revert, bool addPrefix = false) const; + enum PatchOption { + NoOption = 0, + Revert = 1, + AddPrefix = 2 + }; + Q_DECLARE_FLAGS(PatchOptions, PatchOption) + QString makePatch(PatchOptions options) const; static Core::IDocument *findOrCreateDocument(const QString &vcsId, const QString &displayName); diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index a5111435af5..5e7ee1e2262 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -617,7 +617,8 @@ void GitClient::slotStageChunk() if (m_contextController.isNull()) return; - const QString patch = m_contextController->makePatch(false, true); + DiffEditorController::PatchOptions options = DiffEditorController::AddPrefix; + const QString patch = m_contextController->makePatch(options); if (patch.isEmpty()) return; @@ -629,7 +630,9 @@ void GitClient::slotUnstageChunk() if (m_contextController.isNull()) return; - const QString patch = m_contextController->makePatch(true, true); + DiffEditorController::PatchOptions options = DiffEditorController::AddPrefix; + options |= DiffEditorController::Revert; + const QString patch = m_contextController->makePatch(options); if (patch.isEmpty()) return;