forked from qt-creator/qt-creator
DiffEditor: Simplify DiffEditorDocument::plainText()
Change-Id: If7c1ab43f099bbbc573ba354668c56fee0eb55a5 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
#include <utils/fileutils.h>
|
#include <utils/fileutils.h>
|
||||||
#include <utils/qtcassert.h>
|
#include <utils/qtcassert.h>
|
||||||
|
#include <utils/stringutils.h>
|
||||||
|
|
||||||
#include <coreplugin/dialogs/codecselector.h>
|
#include <coreplugin/dialogs/codecselector.h>
|
||||||
#include <coreplugin/editormanager/editormanager.h>
|
#include <coreplugin/editormanager/editormanager.h>
|
||||||
@@ -345,11 +346,11 @@ QString DiffEditorDocument::fallbackSaveAsFileName() const
|
|||||||
// ### fixme: git-specific handling should be done in the git plugin:
|
// ### fixme: git-specific handling should be done in the git plugin:
|
||||||
// Remove unexpanded branches and follows-tag, clear indentation
|
// Remove unexpanded branches and follows-tag, clear indentation
|
||||||
// and create E-mail
|
// and create E-mail
|
||||||
static void formatGitDescription(QString *description)
|
static QString formatGitDescription(const QString &description)
|
||||||
{
|
{
|
||||||
QString result;
|
QString result;
|
||||||
result.reserve(description->size());
|
result.reserve(description.size());
|
||||||
const auto descriptionList = description->split('\n');
|
const auto descriptionList = description.split('\n');
|
||||||
for (QString line : descriptionList) {
|
for (QString line : descriptionList) {
|
||||||
if (line.startsWith("commit ") || line.startsWith("Branches: <Expand>"))
|
if (line.startsWith("commit ") || line.startsWith("Branches: <Expand>"))
|
||||||
continue;
|
continue;
|
||||||
@@ -361,23 +362,13 @@ static void formatGitDescription(QString *description)
|
|||||||
result.append(line);
|
result.append(line);
|
||||||
result.append('\n');
|
result.append('\n');
|
||||||
}
|
}
|
||||||
*description = result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString DiffEditorDocument::plainText() const
|
QString DiffEditorDocument::plainText() const
|
||||||
{
|
{
|
||||||
QString result = description();
|
return Utils::joinStrings({formatGitDescription(description()),
|
||||||
const int formattingOptions = DiffUtils::GitFormat;
|
DiffUtils::makePatch(diffFiles(), DiffUtils::GitFormat)}, '\n');
|
||||||
if (formattingOptions & DiffUtils::GitFormat)
|
|
||||||
formatGitDescription(&result);
|
|
||||||
|
|
||||||
const QString diff = DiffUtils::makePatch(diffFiles(), formattingOptions);
|
|
||||||
if (!diff.isEmpty()) {
|
|
||||||
if (!result.isEmpty())
|
|
||||||
result += '\n';
|
|
||||||
result += diff;
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DiffEditorDocument::beginReload()
|
void DiffEditorDocument::beginReload()
|
||||||
|
Reference in New Issue
Block a user