summaryrefslogtreecommitdiff
path: root/gtk2_ardour/plugin_selector.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-05-25 01:23:39 +0200
committerRobin Gareus <robin@gareus.org>2019-05-25 01:23:39 +0200
commita18c54ce943f1bd36140ccd9934fb6bd032f9c49 (patch)
tree312e17f936e208348fc6cf6a42f32f75bdc50b53 /gtk2_ardour/plugin_selector.cc
parent02c698ed854f7e4ab1f5739e8a16a92a1c6c56ea (diff)
Optimize Plugin-Manager: minimize status query
Diffstat (limited to 'gtk2_ardour/plugin_selector.cc')
-rw-r--r--gtk2_ardour/plugin_selector.cc13
1 files changed, 9 insertions, 4 deletions
diff --git a/gtk2_ardour/plugin_selector.cc b/gtk2_ardour/plugin_selector.cc
index a06e24893a..2eb6dd0b67 100644
--- a/gtk2_ardour/plugin_selector.cc
+++ b/gtk2_ardour/plugin_selector.cc
@@ -349,6 +349,7 @@ PluginSelector::show_this_plugin (const PluginInfoPtr& info, const std::string&
{
string mode;
bool maybe_show = false;
+ PluginManager::PluginStatusType status = manager.get_status (info);
if (!searchstr.empty()) {
@@ -376,7 +377,9 @@ PluginSelector::show_this_plugin (const PluginInfoPtr& info, const std::string&
/* user asked to ignore filters */
if (maybe_show && _search_ignore_checkbox->get_active()) {
- if (manager.get_status (info) == PluginManager::Hidden) {
+ if (status == PluginManager::Hidden) {
+ return false;
+ }
return false;
}
return true;
@@ -395,15 +398,17 @@ PluginSelector::show_this_plugin (const PluginInfoPtr& info, const std::string&
return false;
}
- if (_fil_favorites_radio->get_active() && !(manager.get_status (info) == PluginManager::Favorite)) {
+ if (_fil_favorites_radio->get_active() && status != PluginManager::Favorite) {
return false;
}
- if (_fil_hidden_radio->get_active() && !(manager.get_status (info) == PluginManager::Hidden)) {
+ if (_fil_hidden_radio->get_active() && status != PluginManager::Hidden) {
return false;
}
- if (!_fil_hidden_radio->get_active() && manager.get_status (info) == PluginManager::Hidden) {
+ if (!_fil_hidden_radio->get_active() && status == PluginManager::Hidden) {
+ return false;
+ }
return false;
}