diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2017-01-11 16:51:39 -0600 |
---|---|---|
committer | Ben Loftis <ben@harrisonconsoles.com> | 2017-01-12 11:51:42 -0600 |
commit | 8dff52ce01d7714d0a6399de09a62586cf0ef3b5 (patch) | |
tree | 269d51147967b651042e79c87bffc1d82af261e6 /gtk2_ardour/plugin_selector.cc | |
parent | c6464e9c34864b9b2347fb7b6ac50261991da8aa (diff) |
Show plugin format in menu lists. Particularly important on Mac, where you might have both AU and VST formats of a plugin
Diffstat (limited to 'gtk2_ardour/plugin_selector.cc')
-rw-r--r-- | gtk2_ardour/plugin_selector.cc | 37 |
1 files changed, 34 insertions, 3 deletions
diff --git a/gtk2_ardour/plugin_selector.cc b/gtk2_ardour/plugin_selector.cc index dd3a3a908d..d3cad6520d 100644 --- a/gtk2_ardour/plugin_selector.cc +++ b/gtk2_ardour/plugin_selector.cc @@ -785,6 +785,34 @@ PluginSelector::build_plugin_menu () items.push_back (MenuElem (_("By Category"), *manage (by_category))); } +string +GetPluginTypeStr(PluginInfoPtr info) +{ + string type; + + switch (info->type) { + case LADSPA: + type = X_(" (LADSPA)"); + break; + case AudioUnit: + type = X_(" (AU)"); + break; + case LV2: + type = X_(" (LV2)"); + break; + case Windows_VST: + case LXVST: + case MacVST: + type = X_(" (VST)"); + break; + case Lua: + type = X_(" (Lua)"); + break; + } + + return type; +} + Gtk::Menu* PluginSelector::create_favs_menu (PluginInfoList& all_plugs) { @@ -798,7 +826,8 @@ PluginSelector::create_favs_menu (PluginInfoList& all_plugs) for (PluginInfoList::const_iterator i = all_plugs.begin(); i != all_plugs.end(); ++i) { if (manager.get_status (*i) == PluginManager::Favorite) { - MenuElem elem ((*i)->name, (sigc::bind (sigc::mem_fun (*this, &PluginSelector::plugin_chosen_from_menu), *i))); + string typ = GetPluginTypeStr(*i); + MenuElem elem ((*i)->name + typ, (sigc::bind (sigc::mem_fun (*this, &PluginSelector::plugin_chosen_from_menu), *i))); elem.get_child()->set_use_underline (false); favs->items().push_back (elem); } @@ -857,7 +886,8 @@ PluginSelector::create_by_creator_menu (ARDOUR::PluginInfoList& all_plugs) creator_submenu_map.insert (pair<std::string,Menu*> (creator, submenu)); submenu->set_name("ArdourContextMenu"); } - MenuElem elem ((*i)->name, (sigc::bind (sigc::mem_fun (*this, &PluginSelector::plugin_chosen_from_menu), *i))); + string typ = GetPluginTypeStr(*i); + MenuElem elem ((*i)->name+typ, (sigc::bind (sigc::mem_fun (*this, &PluginSelector::plugin_chosen_from_menu), *i))); elem.get_child()->set_use_underline (false); submenu->items().push_back (elem); } @@ -895,7 +925,8 @@ PluginSelector::create_by_category_menu (ARDOUR::PluginInfoList& all_plugs) category_submenu_map.insert (pair<std::string,Menu*> (category, submenu)); submenu->set_name("ArdourContextMenu"); } - MenuElem elem ((*i)->name, (sigc::bind (sigc::mem_fun (*this, &PluginSelector::plugin_chosen_from_menu), *i))); + string typ = GetPluginTypeStr(*i); + MenuElem elem ((*i)->name + typ, (sigc::bind (sigc::mem_fun (*this, &PluginSelector::plugin_chosen_from_menu), *i))); elem.get_child()->set_use_underline (false); submenu->items().push_back (elem); } |