Re-use the Mixer's PluginManager (singleton)

Previously there were three plugin-manager instances (two of which
were never destroyed).

There were also 3 sets of context-menus (favorites, by tag, by author..),
all of which were re-built when plugin stati changed.

Since the Plugin-manager is a modal dialog, it can be re-used in
all contexts (route-ui, monitor-section, mixer).
This commit is contained in:
Robin Gareus 2019-05-25 00:12:55 +02:00
parent ce8740cf5e
commit 92cfed14cf
No known key found for this signature in database
GPG key ID: A090BCE02CF57F04
4 changed files with 16 additions and 9 deletions

View file

@ -36,7 +36,6 @@
#include "route_ui.h"
#include "monitor_selector.h"
#include "plugin_selector.h"
#include "processor_box.h"
#include "processor_selection.h"
@ -44,6 +43,8 @@ namespace ArdourWidgets {
class TearOff;
}
class PluginSelector;
class MonitorSection : public RouteUI, public Gtk::EventBox
{
public:
@ -56,7 +57,7 @@ public:
std::string state_id() const;
PluginSelector* plugin_selector() { return _plugin_selector; }
PluginSelector* plugin_selector();
void use_others_actions ();
@ -177,7 +178,6 @@ private:
void route_property_changed (const PBD::PropertyChange&) {}
ProcessorBox* insert_box;
PluginSelector* _plugin_selector;
ProcessorSelection _rr_selection;
void help_count_processors (boost::weak_ptr<ARDOUR::Processor> p, uint32_t* cnt) const;
uint32_t count_processors ();