forked from qt-creator/qt-creator
DiffUtils: Get rid of PatchFormattingFlags
Get rid of PatchFormattingFlags argument inside DiffUtils::makePatch(), as there is the only caller of this method. Internally, behave like the GitFormat flag was passed. As all callers to sideFileName() were always passing AddLevel (GitFormat flag contained AddLevel), the flag is not needed anymore. Change-Id: I1993cfd7212f5f60a5bdb2c9e1e4317c3ecd91d7 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -368,7 +368,7 @@ static QString formatGitDescription(const QString &description)
|
|||||||
QString DiffEditorDocument::plainText() const
|
QString DiffEditorDocument::plainText() const
|
||||||
{
|
{
|
||||||
return Utils::joinStrings({formatGitDescription(description()),
|
return Utils::joinStrings({formatGitDescription(description()),
|
||||||
DiffUtils::makePatch(diffFiles(), DiffUtils::GitFormat)}, '\n');
|
DiffUtils::makePatch(diffFiles())}, '\n');
|
||||||
}
|
}
|
||||||
|
|
||||||
void DiffEditorDocument::beginReload()
|
void DiffEditorDocument::beginReload()
|
||||||
|
@@ -487,28 +487,25 @@ QString DiffUtils::makePatch(const ChunkData &chunkData,
|
|||||||
return diffText;
|
return diffText;
|
||||||
}
|
}
|
||||||
|
|
||||||
static QString sideFileName(DiffSide side, const FileData &fileData, unsigned formatFlags)
|
static QString sideFileName(DiffSide side, const FileData &fileData)
|
||||||
{
|
{
|
||||||
const FileData::FileOperation operation = side == LeftSide ? FileData::NewFile
|
const FileData::FileOperation operation = side == LeftSide ? FileData::NewFile
|
||||||
: FileData::DeleteFile;
|
: FileData::DeleteFile;
|
||||||
if (fileData.fileOperation == operation)
|
if (fileData.fileOperation == operation)
|
||||||
return "/dev/null";
|
return "/dev/null";
|
||||||
const QString sideMarker = side == LeftSide ? "a/" : "b/";
|
const QString sideMarker = side == LeftSide ? "a/" : "b/";
|
||||||
const QString formatMarker = formatFlags & DiffUtils::AddLevel ? sideMarker : QString();
|
return sideMarker + fileData.fileInfo[side].fileName;
|
||||||
return formatMarker + fileData.fileInfo[side].fileName;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QString DiffUtils::makePatch(const QList<FileData> &fileDataList, unsigned formatFlags)
|
QString DiffUtils::makePatch(const QList<FileData> &fileDataList)
|
||||||
{
|
{
|
||||||
QString diffText;
|
QString diffText;
|
||||||
QTextStream str(&diffText);
|
QTextStream str(&diffText);
|
||||||
|
|
||||||
for (int i = 0; i < fileDataList.size(); i++) {
|
for (int i = 0; i < fileDataList.size(); i++) {
|
||||||
const FileData &fileData = fileDataList.at(i);
|
const FileData &fileData = fileDataList.at(i);
|
||||||
if (formatFlags & GitFormat) {
|
str << "diff --git a/" << fileData.fileInfo[LeftSide].fileName
|
||||||
str << "diff --git a/" << fileData.fileInfo[LeftSide].fileName
|
<< " b/" << fileData.fileInfo[RightSide].fileName << '\n';
|
||||||
<< " b/" << fileData.fileInfo[RightSide].fileName << '\n';
|
|
||||||
}
|
|
||||||
if (fileData.fileOperation == FileData::NewFile
|
if (fileData.fileOperation == FileData::NewFile
|
||||||
|| fileData.fileOperation == FileData::DeleteFile) { // git only?
|
|| fileData.fileOperation == FileData::DeleteFile) { // git only?
|
||||||
if (fileData.fileOperation == FileData::NewFile)
|
if (fileData.fileOperation == FileData::NewFile)
|
||||||
@@ -524,16 +521,16 @@ QString DiffUtils::makePatch(const QList<FileData> &fileDataList, unsigned forma
|
|||||||
|
|
||||||
if (fileData.binaryFiles) {
|
if (fileData.binaryFiles) {
|
||||||
str << "Binary files ";
|
str << "Binary files ";
|
||||||
str << sideFileName(LeftSide, fileData, formatFlags);
|
str << sideFileName(LeftSide, fileData);
|
||||||
str << " and ";
|
str << " and ";
|
||||||
str << sideFileName(RightSide, fileData, formatFlags);
|
str << sideFileName(RightSide, fileData);
|
||||||
str << " differ\n";
|
str << " differ\n";
|
||||||
} else {
|
} else {
|
||||||
if (!fileData.chunks.isEmpty()) {
|
if (!fileData.chunks.isEmpty()) {
|
||||||
str << "--- ";
|
str << "--- ";
|
||||||
str << sideFileName(LeftSide, fileData, formatFlags) << "\n";
|
str << sideFileName(LeftSide, fileData) << "\n";
|
||||||
str << "+++ ";
|
str << "+++ ";
|
||||||
str << sideFileName(RightSide, fileData, formatFlags) << "\n";
|
str << sideFileName(RightSide, fileData) << "\n";
|
||||||
for (int j = 0; j < fileData.chunks.size(); j++) {
|
for (int j = 0; j < fileData.chunks.size(); j++) {
|
||||||
str << makePatch(fileData.chunks.at(j),
|
str << makePatch(fileData.chunks.at(j),
|
||||||
(j == fileData.chunks.size() - 1)
|
(j == fileData.chunks.size() - 1)
|
||||||
@@ -1041,8 +1038,8 @@ static bool detectIndexAndBinary(QStringView patch, FileData *fileData, QStringV
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QString leftFileName = sideFileName(LeftSide, *fileData, DiffUtils::AddLevel);
|
const QString leftFileName = sideFileName(LeftSide, *fileData);
|
||||||
const QString rightFileName = sideFileName(RightSide, *fileData, DiffUtils::AddLevel);
|
const QString rightFileName = sideFileName(RightSide, *fileData);
|
||||||
const QString binaryLine = "Binary files "
|
const QString binaryLine = "Binary files "
|
||||||
+ leftFileName + " and "
|
+ leftFileName + " and "
|
||||||
+ rightFileName + " differ";
|
+ rightFileName + " differ";
|
||||||
|
@@ -126,11 +126,6 @@ public:
|
|||||||
|
|
||||||
class DIFFEDITOR_EXPORT DiffUtils {
|
class DIFFEDITOR_EXPORT DiffUtils {
|
||||||
public:
|
public:
|
||||||
enum PatchFormattingFlags {
|
|
||||||
AddLevel = 0x1, // Add 'a/' , '/b' for git am
|
|
||||||
GitFormat = AddLevel | 0x2, // Add line 'diff ..' as git does
|
|
||||||
};
|
|
||||||
|
|
||||||
static ChunkData calculateOriginalData(const QList<Utils::Diff> &leftDiffList,
|
static ChunkData calculateOriginalData(const QList<Utils::Diff> &leftDiffList,
|
||||||
const QList<Utils::Diff> &rightDiffList);
|
const QList<Utils::Diff> &rightDiffList);
|
||||||
static FileData calculateContextData(const ChunkData &originalData,
|
static FileData calculateContextData(const ChunkData &originalData,
|
||||||
@@ -146,8 +141,7 @@ public:
|
|||||||
const QString &leftFileName,
|
const QString &leftFileName,
|
||||||
const QString &rightFileName,
|
const QString &rightFileName,
|
||||||
bool lastChunk = false);
|
bool lastChunk = false);
|
||||||
static QString makePatch(const QList<FileData> &fileDataList,
|
static QString makePatch(const QList<FileData> &fileDataList);
|
||||||
unsigned formatFlags = 0);
|
|
||||||
static QList<FileData> readPatch(const QString &patch,
|
static QList<FileData> readPatch(const QString &patch,
|
||||||
bool *ok = nullptr,
|
bool *ok = nullptr,
|
||||||
QFutureInterfaceBase *jobController = nullptr);
|
QFutureInterfaceBase *jobController = nullptr);
|
||||||
|
Reference in New Issue
Block a user