Add folding to Side-by-side diff editor

Add folding for files and chunks.

Change-Id: I76476351e88f0b3e71e3cccbca0fa17b02c26226
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Jarek Kobus
2017-10-11 14:14:10 +02:00
parent 8a2adfef6c
commit 96aeabd0a6
7 changed files with 160 additions and 9 deletions

View File

@@ -451,13 +451,6 @@ QString UnifiedDiffEditorWidget::showChunk(const ChunkData &chunkData,
return diffText;
}
static void setFoldingIndent(const QTextBlock &block, int indent)
{
if (TextEditor::TextBlockUserData *userData = TextEditor::TextDocumentLayout::userData(block))
userData->setFoldingIndent(indent);
}
void UnifiedDiffEditorWidget::showDiff()
{
QString diffText;
@@ -478,8 +471,8 @@ void UnifiedDiffEditorWidget::showDiff()
const QString rightFileInfo = QLatin1String("+++ ")
+ fileData.rightFileInfo.fileName + QLatin1Char('\n');
setFileInfo(blockNumber, fileData.leftFileInfo, fileData.rightFileInfo);
selections[blockNumber].append(DiffSelection(&m_controller.m_fileLineFormat));
foldingIndent.insert(blockNumber, 1);
selections[blockNumber].append(DiffSelection(&m_controller.m_fileLineFormat));
blockNumber++;
foldingIndent.insert(blockNumber, 1);
selections[blockNumber].append(DiffSelection(&m_controller.m_fileLineFormat));