From aa42fcc3e13aa3be4c1d95be07012d5f4b6ff039 Mon Sep 17 00:00:00 2001 From: Oleg Shparber Date: Sun, 5 Jun 2016 21:49:31 -0400 Subject: [PATCH] ui: Update available docset list if storage changes (fixes #475) --- src/ui/settingsdialog.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/ui/settingsdialog.cpp b/src/ui/settingsdialog.cpp index aec39b8f0..a2d6f5f65 100644 --- a/src/ui/settingsdialog.cpp +++ b/src/ui/settingsdialog.cpp @@ -117,6 +117,20 @@ SettingsDialog::SettingsDialog(Core::Application *app, QWidget *parent) : this, &SettingsDialog::updateDocsetFilter); ui->availableDocsetList->setItemDelegate(new ProgressItemDelegate(this)); + connect(m_docsetRegistry, &DocsetRegistry::docsetRemoved, this, [this](const QString name) { + QListWidgetItem *item = findDocsetListItem(m_availableDocsets[name].title()); + if (!item) + return; + + item->setHidden(false); + }); + connect(m_docsetRegistry, &DocsetRegistry::docsetAdded, this, [this](const QString name) { + QListWidgetItem *item = findDocsetListItem(m_availableDocsets[name].title()); + if (!item) + return; + + item->setHidden(true); + }); // Setup signals & slots connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &SettingsDialog::saveSettings);