forked from qt-creator/qt-creator
DiffEditor: Use DiffSide in DiffEditorInput
Change-Id: I195c37f29884f1d066acbb54c8ace07f8801f829 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
@@ -219,13 +219,13 @@ void DiffEditorWidgetController::jumpToOriginalFile(const QString &fileName,
|
|||||||
|
|
||||||
void DiffEditorWidgetController::setFontSettings(const FontSettings &fontSettings)
|
void DiffEditorWidgetController::setFontSettings(const FontSettings &fontSettings)
|
||||||
{
|
{
|
||||||
m_fileLineFormat = fontSettings.toTextCharFormat(C_DIFF_FILE_LINE);
|
m_fileLineFormat = fontSettings.toTextCharFormat(C_DIFF_FILE_LINE);
|
||||||
m_chunkLineFormat = fontSettings.toTextCharFormat(C_DIFF_CONTEXT_LINE);
|
m_chunkLineFormat = fontSettings.toTextCharFormat(C_DIFF_CONTEXT_LINE);
|
||||||
m_spanLineFormat = fontSettings.toTextCharFormat(C_LINE_NUMBER);
|
m_spanLineFormat = fontSettings.toTextCharFormat(C_LINE_NUMBER);
|
||||||
m_leftLineFormat = fontSettings.toTextCharFormat(C_DIFF_SOURCE_LINE);
|
m_lineFormat[LeftSide] = fontSettings.toTextCharFormat(C_DIFF_SOURCE_LINE);
|
||||||
m_leftCharFormat = fontSettings.toTextCharFormat(C_DIFF_SOURCE_CHAR);
|
m_charFormat[LeftSide] = fontSettings.toTextCharFormat(C_DIFF_SOURCE_CHAR);
|
||||||
m_rightLineFormat = fontSettings.toTextCharFormat(C_DIFF_DEST_LINE);
|
m_lineFormat[RightSide] = fontSettings.toTextCharFormat(C_DIFF_DEST_LINE);
|
||||||
m_rightCharFormat = fontSettings.toTextCharFormat(C_DIFF_DEST_CHAR);
|
m_charFormat[RightSide] = fontSettings.toTextCharFormat(C_DIFF_DEST_CHAR);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DiffEditorWidgetController::addCodePasterAction(QMenu *menu, int fileIndex, int chunkIndex)
|
void DiffEditorWidgetController::addCodePasterAction(QMenu *menu, int fileIndex, int chunkIndex)
|
||||||
@@ -336,10 +336,8 @@ DiffEditorInput::DiffEditorInput(DiffEditorWidgetController *controller)
|
|||||||
, m_fileLineFormat(&controller->m_fileLineFormat)
|
, m_fileLineFormat(&controller->m_fileLineFormat)
|
||||||
, m_chunkLineFormat(&controller->m_chunkLineFormat)
|
, m_chunkLineFormat(&controller->m_chunkLineFormat)
|
||||||
, m_spanLineFormat(&controller->m_spanLineFormat)
|
, m_spanLineFormat(&controller->m_spanLineFormat)
|
||||||
, m_leftLineFormat(&controller->m_leftLineFormat)
|
, m_lineFormat{&controller->m_lineFormat[LeftSide], &controller->m_lineFormat[RightSide]}
|
||||||
, m_rightLineFormat(&controller->m_rightLineFormat)
|
, m_charFormat{&controller->m_charFormat[LeftSide], &controller->m_charFormat[RightSide]}
|
||||||
, m_leftCharFormat(&controller->m_leftCharFormat)
|
|
||||||
, m_rightCharFormat(&controller->m_rightCharFormat)
|
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
|
|
||||||
|
@@ -52,10 +52,8 @@ public:
|
|||||||
QTextCharFormat m_fileLineFormat;
|
QTextCharFormat m_fileLineFormat;
|
||||||
QTextCharFormat m_chunkLineFormat;
|
QTextCharFormat m_chunkLineFormat;
|
||||||
QTextCharFormat m_spanLineFormat;
|
QTextCharFormat m_spanLineFormat;
|
||||||
QTextCharFormat m_leftLineFormat;
|
std::array<QTextCharFormat, SideCount> m_lineFormat{};
|
||||||
QTextCharFormat m_rightLineFormat;
|
std::array<QTextCharFormat, SideCount> m_charFormat{};
|
||||||
QTextCharFormat m_leftCharFormat;
|
|
||||||
QTextCharFormat m_rightCharFormat;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool isInProgress() const;
|
bool isInProgress() const;
|
||||||
@@ -88,10 +86,8 @@ public:
|
|||||||
QTextCharFormat *m_fileLineFormat = nullptr;
|
QTextCharFormat *m_fileLineFormat = nullptr;
|
||||||
QTextCharFormat *m_chunkLineFormat = nullptr;
|
QTextCharFormat *m_chunkLineFormat = nullptr;
|
||||||
QTextCharFormat *m_spanLineFormat = nullptr;
|
QTextCharFormat *m_spanLineFormat = nullptr;
|
||||||
QTextCharFormat *m_leftLineFormat = nullptr;
|
std::array<QTextCharFormat *, SideCount> m_lineFormat{};
|
||||||
QTextCharFormat *m_rightLineFormat = nullptr;
|
std::array<QTextCharFormat *, SideCount> m_charFormat{};
|
||||||
QTextCharFormat *m_leftCharFormat = nullptr;
|
|
||||||
QTextCharFormat *m_rightCharFormat = nullptr;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
@@ -338,11 +338,11 @@ SideBySideDiffOutput SideDiffData::diffOutput(QFutureInterface<void> &fi, int pr
|
|||||||
|
|
||||||
if (!rowData.equal) {
|
if (!rowData.equal) {
|
||||||
if (rowData.line[LeftSide].textLineType == TextLineData::TextLine)
|
if (rowData.line[LeftSide].textLineType == TextLineData::TextLine)
|
||||||
leftFormats[blockNumber].append({input.m_leftLineFormat});
|
leftFormats[blockNumber].append({input.m_lineFormat[LeftSide]});
|
||||||
else
|
else
|
||||||
leftFormats[blockNumber].append({input.m_spanLineFormat});
|
leftFormats[blockNumber].append({input.m_spanLineFormat});
|
||||||
if (rowData.line[RightSide].textLineType == TextLineData::TextLine)
|
if (rowData.line[RightSide].textLineType == TextLineData::TextLine)
|
||||||
rightFormats[blockNumber].append({input.m_rightLineFormat});
|
rightFormats[blockNumber].append({input.m_lineFormat[RightSide]});
|
||||||
else
|
else
|
||||||
rightFormats[blockNumber].append({input.m_spanLineFormat});
|
rightFormats[blockNumber].append({input.m_spanLineFormat});
|
||||||
}
|
}
|
||||||
@@ -350,13 +350,13 @@ SideBySideDiffOutput SideDiffData::diffOutput(QFutureInterface<void> &fi, int pr
|
|||||||
for (auto it = leftLineData.changedPositions.cbegin(),
|
for (auto it = leftLineData.changedPositions.cbegin(),
|
||||||
end = leftLineData.changedPositions.cend(); it != end; ++it) {
|
end = leftLineData.changedPositions.cend(); it != end; ++it) {
|
||||||
leftFormats[blockNumber].append(
|
leftFormats[blockNumber].append(
|
||||||
{input.m_leftCharFormat, it.key(), it.value()});
|
{input.m_charFormat[LeftSide], it.key(), it.value()});
|
||||||
}
|
}
|
||||||
|
|
||||||
for (auto it = rightLineData.changedPositions.cbegin(),
|
for (auto it = rightLineData.changedPositions.cbegin(),
|
||||||
end = rightLineData.changedPositions.cend(); it != end; ++it) {
|
end = rightLineData.changedPositions.cend(); it != end; ++it) {
|
||||||
rightFormats[blockNumber].append(
|
rightFormats[blockNumber].append(
|
||||||
{input.m_rightCharFormat, it.key(), it.value()});
|
{input.m_charFormat[RightSide], it.key(), it.value()});
|
||||||
}
|
}
|
||||||
|
|
||||||
leftText += separator;
|
leftText += separator;
|
||||||
|
@@ -346,14 +346,14 @@ QString UnifiedDiffData::setChunk(const DiffEditorInput &input, const ChunkData
|
|||||||
const int blockDelta = line.count('\n'); // no new line
|
const int blockDelta = line.count('\n'); // no new line
|
||||||
// could have been added
|
// could have been added
|
||||||
for (int k = 0; k < blockDelta; k++)
|
for (int k = 0; k < blockDelta; k++)
|
||||||
(*selections)[*blockNumber + blockCount + 1 + k].append({input.m_leftLineFormat});
|
(*selections)[*blockNumber + blockCount + 1 + k].append({input.m_lineFormat[LeftSide]});
|
||||||
|
|
||||||
for (auto it = lineData.changedPositions.cbegin(),
|
for (auto it = lineData.changedPositions.cbegin(),
|
||||||
end = lineData.changedPositions.cend(); it != end; ++it) {
|
end = lineData.changedPositions.cend(); it != end; ++it) {
|
||||||
const int startPos = it.key() < 0 ? 1 : it.key() + 1;
|
const int startPos = it.key() < 0 ? 1 : it.key() + 1;
|
||||||
const int endPos = it.value() < 0 ? it.value() : it.value() + 1;
|
const int endPos = it.value() < 0 ? it.value() : it.value() + 1;
|
||||||
(*selections)[*blockNumber + blockCount + 1].append(
|
(*selections)[*blockNumber + blockCount + 1].append(
|
||||||
{input.m_leftCharFormat, startPos, endPos});
|
{input.m_charFormat[LeftSide], startPos, endPos});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!line.isEmpty()) {
|
if (!line.isEmpty()) {
|
||||||
@@ -385,14 +385,14 @@ QString UnifiedDiffData::setChunk(const DiffEditorInput &input, const ChunkData
|
|||||||
// could have been added
|
// could have been added
|
||||||
|
|
||||||
for (int k = 0; k < blockDelta; k++)
|
for (int k = 0; k < blockDelta; k++)
|
||||||
(*selections)[*blockNumber + blockCount + 1 + k].append({input.m_rightLineFormat});
|
(*selections)[*blockNumber + blockCount + 1 + k].append({input.m_lineFormat[RightSide]});
|
||||||
|
|
||||||
for (auto it = lineData.changedPositions.cbegin(),
|
for (auto it = lineData.changedPositions.cbegin(),
|
||||||
end = lineData.changedPositions.cend(); it != end; ++it) {
|
end = lineData.changedPositions.cend(); it != end; ++it) {
|
||||||
const int startPos = it.key() < 0 ? 1 : it.key() + 1;
|
const int startPos = it.key() < 0 ? 1 : it.key() + 1;
|
||||||
const int endPos = it.value() < 0 ? it.value() : it.value() + 1;
|
const int endPos = it.value() < 0 ? it.value() : it.value() + 1;
|
||||||
(*selections)[*blockNumber + blockCount + 1].append(
|
(*selections)[*blockNumber + blockCount + 1].append(
|
||||||
{input.m_rightCharFormat, startPos, endPos});
|
{input.m_charFormat[RightSide], startPos, endPos});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!line.isEmpty()) {
|
if (!line.isEmpty()) {
|
||||||
|
Reference in New Issue
Block a user