MCPcopy Create free account
hub / github.com/KDE/kate / diffDocs

Method diffDocs

apps/lib/diff/diffwidget.cpp:96–121  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

94}
95
96void DiffWidgetManager::diffDocs(KTextEditor::Document *l, KTextEditor::Document *r, class KTextEditor::MainWindow *mw)
97{
98 DiffParams p;
99 p.arguments = DiffWidget::diffDocsGitArgs(l, r);
100 p.flags.setFlag(DiffParams::Flag::ShowEditLeftSide, true);
101 p.flags.setFlag(DiffParams::Flag::ShowEditRightSide, true);
102 p.srcFile = l->url().toLocalFile();
103 p.destFile = r->url().toLocalFile();
104 DiffWidget *existing = existingDiffWidgetForParams(mw, p);
105 if (!existing) {
106 existing = new DiffWidget(p);
107 mw->connect(existing, &DiffWidget::openFileRequested, mw, [mw](QString path, int line, int columnNumber) {
108 auto view = mw->openUrl(QUrl(path));
109 view->setCursorPosition(KTextEditor::Cursor(line - 1, columnNumber));
110 });
111 existing->diffDocs(l, r);
112 existing->setWindowTitle(i18n("Diff %1 .. %2", l->documentName(), r->documentName()));
113 existing->setWindowIcon(QIcon::fromTheme(QStringLiteral("text-x-patch")));
114 mw->addWidget(existing);
115 } else {
116 existing->clearData();
117 existing->m_params = p;
118 existing->diffDocs(l, r);
119 mw->activateWidget(existing);
120 }
121}
122
123class Toolbar : public QToolBar
124{

Callers

nothing calls this directly

Calls 13

setupGitProcessFunction · 0.85
gitNotFoundMessageFunction · 0.85
setFlagMethod · 0.80
urlMethod · 0.80
connectMethod · 0.80
setCursorPositionMethod · 0.80
documentNameMethod · 0.80
QUrlClass · 0.70
CursorClass · 0.50
openUrlMethod · 0.45
addWidgetMethod · 0.45
clearDataMethod · 0.45

Tested by

no test coverage detected