diff options
Diffstat (limited to 'src/plugins/git/giteditor.cpp')
-rw-r--r-- | src/plugins/git/giteditor.cpp | 51 |
1 files changed, 1 insertions, 50 deletions
diff --git a/src/plugins/git/giteditor.cpp b/src/plugins/git/giteditor.cpp index 21b688b2e8a..36463955963 100644 --- a/src/plugins/git/giteditor.cpp +++ b/src/plugins/git/giteditor.cpp @@ -308,59 +308,10 @@ bool GitEditorWidget::isValidRevision(const QString &revision) const return GitClient::instance()->isValidRevision(revision); } -void GitEditorWidget::addChangeActions(QMenu *menu, const QString &change, const QString &workingDir) -{ - menu->addAction(tr("Cherr&y-Pick Change %1").arg(change), [workingDir, change] { - GitClient::instance()->synchronousCherryPick(workingDir, change); - }); - menu->addAction(tr("Re&vert Change %1").arg(change), [workingDir, change] { - GitClient::instance()->synchronousRevert(workingDir, change); - }); - menu->addAction(tr("C&heckout Change %1").arg(change), [workingDir, change] { - GitClient::instance()->checkout(workingDir, change); - }); - connect(menu->addAction(tr("&Interactive Rebase from Change %1...").arg(change)), - &QAction::triggered, [workingDir, change] { - GitPlugin::startRebaseFromCommit(workingDir, change); - }); - menu->addAction(tr("&Log for Change %1").arg(change), [workingDir, change] { - GitClient::instance()->log(workingDir, QString(), false, {change}); - }); - menu->addAction(tr("Add &Tag for Change %1...").arg(change), [workingDir, change] { - QString output; - QString errorMessage; - GitClient::instance()->synchronousTagCmd(workingDir, QStringList(), - &output, &errorMessage); - - const QStringList tags = output.split('\n'); - BranchAddDialog dialog(tags, BranchAddDialog::Type::AddTag, Core::ICore::dialogParent()); - - if (dialog.exec() == QDialog::Rejected) - return; - - GitClient::instance()->synchronousTagCmd(workingDir, - {dialog.branchName(), change}, - &output, &errorMessage); - VcsOutputWindow::append(output); - if (!errorMessage.isEmpty()) - VcsOutputWindow::append(errorMessage, VcsOutputWindow::MessageStyle::Error); - }); - - auto resetChange = [workingDir, change](const QByteArray &resetType) { - GitClient::instance()->reset( - workingDir, QLatin1String("--" + resetType), change); - }; - auto resetMenu = new QMenu(tr("&Reset to Change %1").arg(change), menu); - resetMenu->addAction(tr("&Hard"), std::bind(resetChange, "hard")); - resetMenu->addAction(tr("&Mixed"), std::bind(resetChange, "mixed")); - resetMenu->addAction(tr("&Soft"), std::bind(resetChange, "soft")); - menu->addMenu(resetMenu); -} - void GitEditorWidget::addChangeActions(QMenu *menu, const QString &change) { if (contentType() != OtherContent) - addChangeActions(menu, change, sourceWorkingDirectory()); + GitClient::addChangeActions(menu, change, sourceWorkingDirectory()); } QString GitEditorWidget::revisionSubject(const QTextBlock &inBlock) const |