File indexing completed on 2024-04-28 04:38:51
0001 /* 0002 SPDX-FileCopyrightText: 2019 José Millán Soto <jmillan@kde-espana.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "rebasedialog.h" 0008 #include "gitplugin.h" 0009 #include "ui_rebasedialog.h" 0010 0011 #include <vcs/models/brancheslistmodel.h> 0012 #include <vcs/dvcs/dvcsjob.h> 0013 #include <interfaces/icore.h> 0014 #include <interfaces/iruncontroller.h> 0015 #include <QDir> 0016 #include <QUrl> 0017 #include <QComboBox> 0018 #include <KLocalizedString> 0019 0020 using namespace KDevelop; 0021 0022 RebaseDialog::RebaseDialog(GitPlugin* plugin, const QUrl &repository, QWidget* parent) 0023 : QDialog(parent), m_plugin(plugin), m_repository(repository) 0024 { 0025 setWindowTitle(i18nc("@title:window", "Branch Selection")); 0026 0027 m_ui = new Ui::RebaseDialog(); 0028 m_ui->setupUi(this); 0029 0030 m_model = new BranchesListModel(this); 0031 m_model->initialize(plugin, repository); 0032 m_ui->branches->setModel(m_model); 0033 connect(m_ui->rebaseButton, &QPushButton::clicked, this, &RebaseDialog::performRebase); 0034 } 0035 0036 RebaseDialog::~RebaseDialog() 0037 { 0038 delete m_ui; 0039 } 0040 0041 void RebaseDialog::performRebase() 0042 { 0043 QString selectedBranch = m_ui->branches->currentText(); 0044 VcsJob *job = m_plugin->rebase(m_repository, selectedBranch); 0045 ICore::self()->runController()->registerJob(job); 0046 accept(); 0047 } 0048 0049 #include "moc_rebasedialog.cpp"