diff options
author | kh1 <karsten.heimrich@nokia.com> | 2012-03-02 09:28:26 +0100 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@nokia.com> | 2012-03-02 12:54:14 +0100 |
commit | b63f891fa60ab3a0ad5972dcfaa82a331b119a1f (patch) | |
tree | f0b7714c17f0cee608f0b62db261a19990da0551 /installerbuilder | |
parent | 61dc9d1d03f039e5155978e1407c3682803d7088 (diff) |
Fix broken tmp repo only behavior (ui).
Better function naming. Make sure to disable and uncheck
the box when there are no temporary repositories available.
Change-Id: If9087ba845950ef5a6bc3089c303077d332795c3
Reviewed-by: Niels Weber <niels.2.weber@nokia.com>
Diffstat (limited to 'installerbuilder')
-rw-r--r-- | installerbuilder/installerbase/settingsdialog.cpp | 18 | ||||
-rw-r--r-- | installerbuilder/installerbase/settingsdialog.h | 2 |
2 files changed, 15 insertions, 5 deletions
diff --git a/installerbuilder/installerbase/settingsdialog.cpp b/installerbuilder/installerbase/settingsdialog.cpp index 416594d9f..b3508e169 100644 --- a/installerbuilder/installerbase/settingsdialog.cpp +++ b/installerbuilder/installerbase/settingsdialog.cpp @@ -339,13 +339,14 @@ SettingsDialog::SettingsDialog(QInstaller::PackageManagerCore *core, QWidget *pa connect(m_ui->m_addRepository, SIGNAL(clicked()), this, SLOT(addRepository())); connect(m_ui->m_showPasswords, SIGNAL(clicked()), this, SLOT(updatePasswords())); connect(m_ui->m_removeRepository, SIGNAL(clicked()), this, SLOT(removeRepository())); - connect(m_ui->m_useTmpRepositories, SIGNAL(clicked(bool)), this, SLOT(useTmpRepositories(bool))); + connect(m_ui->m_useTmpRepositories, SIGNAL(clicked(bool)), this, SLOT(useTmpRepositoriesOnly(bool))); connect(m_ui->m_repositoriesView, SIGNAL(currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*)), this, SLOT(currentRepositoryChanged(QTreeWidgetItem*, QTreeWidgetItem*))); connect(m_ui->m_testRepository, SIGNAL(clicked()), this, SLOT(testRepository())); - useTmpRepositories(settings.hasReplacementRepos()); + useTmpRepositoriesOnly(settings.hasReplacementRepos()); m_ui->m_useTmpRepositories->setChecked(settings.hasReplacementRepos()); + m_ui->m_useTmpRepositories->setEnabled(settings.hasReplacementRepos()); m_ui->m_repositoriesView->setCurrentItem(m_rootItems.at(settings.hasReplacementRepos())); } @@ -414,6 +415,9 @@ void SettingsDialog::addRepository() m_ui->m_repositoriesView->editItem(item, 4); m_ui->m_repositoriesView->scrollToItem(item); m_ui->m_repositoriesView->setCurrentItem(item); + + if (parent == m_rootItems.value(1)) + m_ui->m_useTmpRepositories->setEnabled(parent->childCount() > 0); } } @@ -463,12 +467,18 @@ void SettingsDialog::removeRepository() QTreeWidgetItem *item = m_ui->m_repositoriesView->currentItem(); if (item && !m_rootItems.contains(item)) { QTreeWidgetItem *parent = item->parent(); - if (parent) + if (parent) { delete parent->takeChild(parent->indexOfChild(item)); + if (parent == m_rootItems.value(1) && parent->childCount() <= 0) { + useTmpRepositoriesOnly(false); + m_ui->m_useTmpRepositories->setChecked(false); + m_ui->m_useTmpRepositories->setEnabled(false); + } + } } } -void SettingsDialog::useTmpRepositories(bool use) +void SettingsDialog::useTmpRepositoriesOnly(bool use) { m_rootItems.at(0)->setDisabled(use); m_rootItems.at(2)->setDisabled(use); diff --git a/installerbuilder/installerbase/settingsdialog.h b/installerbuilder/installerbase/settingsdialog.h index e69809cee..bb0ef0a7d 100644 --- a/installerbuilder/installerbase/settingsdialog.h +++ b/installerbuilder/installerbase/settingsdialog.h @@ -152,7 +152,7 @@ private slots: void testRepository(); void updatePasswords(); void removeRepository(); - void useTmpRepositories(bool use); + void useTmpRepositoriesOnly(bool use); void currentRepositoryChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous); private: |