diff options
author | Gerald Combs <gerald@wireshark.org> | 2018-01-31 13:45:22 -0800 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2018-02-01 16:55:03 +0000 |
commit | d4b5943ba895c2d96c360ef6f1785f1940592ea3 (patch) | |
tree | 012eae574a6d6b46903ba982d4424f5927822aa1 /ui | |
parent | c84b0aeead7cfaf595b546b99ff8bb73f73c8fc5 (diff) |
Qt: Always show the Plugins tab in the about box.
Always show the Plugins tab. We probably have plugins via extcap even if
Lua and dissector plugins are disabled. Tell the user if we don't find
any plugins.
Change-Id: I7ab1fb302298232a847193754b53688620855959
Reviewed-on: https://code.wireshark.org/review/25543
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'ui')
-rw-r--r-- | ui/qt/about_dialog.cpp | 17 | ||||
-rw-r--r-- | ui/qt/about_dialog.ui | 7 |
2 files changed, 18 insertions, 6 deletions
diff --git a/ui/qt/about_dialog.cpp b/ui/qt/about_dialog.cpp index ec3ffc65c3..9e9cae5ef1 100644 --- a/ui/qt/about_dialog.cpp +++ b/ui/qt/about_dialog.cpp @@ -111,6 +111,7 @@ QStringList AuthorListModel::headerColumns() const return QStringList() << tr("Name") << tr("Email"); } +#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) static void plugins_add_description(const char *name, const char *version, const char *types, const char *filename, void *user_data) @@ -119,6 +120,7 @@ static void plugins_add_description(const char *name, const char *version, QStringList plugin_row = QStringList() << name << version << types << filename; *plugin_data << plugin_row; } +#endif PluginListModel::PluginListModel(QObject * parent) : AStringListListModel(parent) { @@ -349,8 +351,7 @@ AboutDialog::AboutDialog(QWidget *parent) : /* Plugins */ -#if defined(HAVE_PLUGINS) || defined(HAVE_LUA) - + ui->label_no_plugins->hide(); PluginListModel * pluginModel = new PluginListModel(this); AStringListListSortFilterProxyModel * pluginFilterModel = new AStringListListSortFilterProxyModel(this); pluginFilterModel->setSourceModel(pluginModel); @@ -366,10 +367,14 @@ AboutDialog::AboutDialog(QWidget *parent) : connect(ui->tblPlugins, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(handleCopyMenu(QPoint))); connect(ui->searchPlugins, SIGNAL(textChanged(QString)), pluginFilterModel, SLOT(setFilter(QString))); connect(ui->cmbType, SIGNAL(currentIndexChanged(QString)), pluginTypeModel, SLOT(setFilter(QString))); - -#else - ui->tabWidget->removeTab(ui->tabWidget->indexOf(ui->tab_plugins)); -#endif + if (ui->tblPlugins->model()->rowCount() < 1) { + foreach (QWidget *w, ui->tab_plugins->findChildren<QWidget *>()) { + w->hide(); + } + ui->label_no_plugins->setAlignment(Qt::AlignVCenter | Qt::AlignHCenter); + ui->label_no_plugins->setEnabled(false); + ui->label_no_plugins->show(); + } /* Shortcuts */ ShortcutListModel * shortcutModel = new ShortcutListModel(this); diff --git a/ui/qt/about_dialog.ui b/ui/qt/about_dialog.ui index 527012415f..cfc48b81d9 100644 --- a/ui/qt/about_dialog.ui +++ b/ui/qt/about_dialog.ui @@ -180,6 +180,13 @@ </attribute> <layout class="QVBoxLayout" name="verticalLayout_4"> <item> + <widget class="QLabel" name="label_no_plugins"> + <property name="text"> + <string>No plugins found.</string> + </property> + </widget> + </item> + <item> <layout class="QHBoxLayout" name="horizontalLayout_3"> <item> <widget class="QLineEdit" name="searchPlugins"> |