diff options
Diffstat (limited to 'src/plugins/git/branchadddialog.cpp')
-rw-r--r-- | src/plugins/git/branchadddialog.cpp | 34 |
1 files changed, 26 insertions, 8 deletions
diff --git a/src/plugins/git/branchadddialog.cpp b/src/plugins/git/branchadddialog.cpp index edc50889ec..8a131a363c 100644 --- a/src/plugins/git/branchadddialog.cpp +++ b/src/plugins/git/branchadddialog.cpp @@ -105,13 +105,31 @@ QWidget *BranchValidationDelegate::createEditor(QWidget *parent, return lineEdit; } -BranchAddDialog::BranchAddDialog(const QStringList &localBranches, bool addBranch, QWidget *parent) : +BranchAddDialog::BranchAddDialog(const QStringList &localBranches, Type type, QWidget *parent) : QDialog(parent), m_ui(new Ui::BranchAddDialog) { m_ui->setupUi(this); + m_ui->trackingCheckBox->setVisible(false); setCheckoutVisible(false); - setWindowTitle(addBranch ? tr("Add Branch") : tr("Rename Branch")); + + switch (type) { + case BranchAddDialog::AddBranch: + setWindowTitle(tr("Add Branch")); + break; + case BranchAddDialog::RenameBranch: + setWindowTitle(tr("Rename Branch")); + break; + case BranchAddDialog::AddTag: + setWindowTitle(tr("Add Tag")); + m_ui->branchNameLabel->setText(tr("Tag name:")); + break; + case BranchAddDialog::RenameTag: + setWindowTitle(tr("Rename Tag")); + m_ui->branchNameLabel->setText(tr("Tag name:")); + break; + } + m_ui->branchNameEdit->setValidator(new BranchNameValidator(localBranches, this)); connect(m_ui->branchNameEdit, &QLineEdit::textChanged, this, &BranchAddDialog::updateButtonStatus); } @@ -134,14 +152,14 @@ QString BranchAddDialog::branchName() const void BranchAddDialog::setTrackedBranchName(const QString &name, bool remote) { - m_ui->trackingCheckBox->setVisible(true); - if (!name.isEmpty()) { - m_ui->trackingCheckBox->setText(remote ? tr("Track remote branch \'%1\'").arg(name) : - tr("Track local branch \'%1\'").arg(name)); - m_ui->trackingCheckBox->setChecked(remote); - } else { + if (name.isEmpty()) { m_ui->trackingCheckBox->setVisible(false); m_ui->trackingCheckBox->setChecked(false); + } else { + m_ui->trackingCheckBox->setText(remote ? tr("Track remote branch \"%1\"").arg(name) : + tr("Track local branch \"%1\"").arg(name)); + m_ui->trackingCheckBox->setVisible(true); + m_ui->trackingCheckBox->setChecked(remote); } } |