forked from qt-creator/qt-creator
Git - Add Cherry Pick in branches dialog
Change-Id: Ic01846e3f8622cfa7b6c6ada8b626af6fa8cb3e9 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
@@ -69,6 +69,7 @@ BranchDialog::BranchDialog(QWidget *parent) :
|
|||||||
connect(m_ui->logButton, SIGNAL(clicked()), this, SLOT(log()));
|
connect(m_ui->logButton, SIGNAL(clicked()), this, SLOT(log()));
|
||||||
connect(m_ui->mergeButton, SIGNAL(clicked()), this, SLOT(merge()));
|
connect(m_ui->mergeButton, SIGNAL(clicked()), this, SLOT(merge()));
|
||||||
connect(m_ui->rebaseButton, SIGNAL(clicked()), this, SLOT(rebase()));
|
connect(m_ui->rebaseButton, SIGNAL(clicked()), this, SLOT(rebase()));
|
||||||
|
connect(m_ui->cherryPickButton, SIGNAL(clicked()), this, SLOT(cherryPick()));
|
||||||
connect(m_ui->trackButton, SIGNAL(clicked()), this, SLOT(setRemoteTracking()));
|
connect(m_ui->trackButton, SIGNAL(clicked()), this, SLOT(setRemoteTracking()));
|
||||||
|
|
||||||
m_ui->branchView->setModel(m_model);
|
m_ui->branchView->setModel(m_model);
|
||||||
@@ -123,6 +124,7 @@ void BranchDialog::enableButtons()
|
|||||||
m_ui->checkoutButton->setEnabled(hasActions && !currentSelected);
|
m_ui->checkoutButton->setEnabled(hasActions && !currentSelected);
|
||||||
m_ui->rebaseButton->setEnabled(hasActions && !currentSelected);
|
m_ui->rebaseButton->setEnabled(hasActions && !currentSelected);
|
||||||
m_ui->mergeButton->setEnabled(hasActions && !currentSelected);
|
m_ui->mergeButton->setEnabled(hasActions && !currentSelected);
|
||||||
|
m_ui->cherryPickButton->setEnabled(hasActions && !currentSelected);
|
||||||
m_ui->trackButton->setEnabled(hasActions && currentLocal && !currentSelected && !isTag);
|
m_ui->trackButton->setEnabled(hasActions && currentLocal && !currentSelected && !isTag);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -338,6 +340,15 @@ void BranchDialog::rebase()
|
|||||||
client->rebase(m_repository, baseBranch);
|
client->rebase(m_repository, baseBranch);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BranchDialog::cherryPick()
|
||||||
|
{
|
||||||
|
QModelIndex idx = selectedIndex();
|
||||||
|
QTC_CHECK(idx != m_model->currentBranch()); // otherwise the button would not be enabled!
|
||||||
|
|
||||||
|
const QString branch = m_model->fullName(idx, true);
|
||||||
|
GitPlugin::instance()->gitClient()->synchronousCherryPick(m_repository, branch);
|
||||||
|
}
|
||||||
|
|
||||||
void BranchDialog::setRemoteTracking()
|
void BranchDialog::setRemoteTracking()
|
||||||
{
|
{
|
||||||
m_model->setRemoteTracking(selectedIndex());
|
m_model->setRemoteTracking(selectedIndex());
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ private slots:
|
|||||||
void log();
|
void log();
|
||||||
void merge();
|
void merge();
|
||||||
void rebase();
|
void rebase();
|
||||||
|
void cherryPick();
|
||||||
void setRemoteTracking();
|
void setRemoteTracking();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -153,6 +153,16 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="cherryPickButton">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Cherry Pick top commit from selected branch</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Cherry Pick</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QPushButton" name="trackButton">
|
<widget class="QPushButton" name="trackButton">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
|
|||||||
Reference in New Issue
Block a user