diff options
author | Robin Gareus <robin@gareus.org> | 2015-12-22 04:43:26 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-12-22 04:43:26 +0100 |
commit | dffa3861baeb837c41d0c3090923d28089c3e981 (patch) | |
tree | 2c13c15378c1a6c69fc9b4676e68705d210f9220 /gtk2_ardour/mixer_ui.h | |
parent | dc206119333a56161d23747eeb0caad2456e5aac (diff) |
add Favorite Plugins List (DnD) to the Mixer.
Diffstat (limited to 'gtk2_ardour/mixer_ui.h')
-rw-r--r-- | gtk2_ardour/mixer_ui.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gtk2_ardour/mixer_ui.h b/gtk2_ardour/mixer_ui.h index 68ea0ca2d9..7431c030b6 100644 --- a/gtk2_ardour/mixer_ui.h +++ b/gtk2_ardour/mixer_ui.h @@ -39,8 +39,12 @@ #include "ardour/ardour.h" #include "ardour/types.h" #include "ardour/session_handle.h" +#include "ardour/plugin.h" +#include "ardour/plugin_manager.h" #include "gtkmm2ext/visibility_tracker.h" +#include "gtkmm2ext/dndtreeview.h" +#include "gtkmm2ext/treeutils.h" #include "enums.h" #include "mixer_actor.h" @@ -115,10 +119,13 @@ class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR Gtk::Button group_display_button; Gtk::ScrolledWindow track_display_scroller; Gtk::ScrolledWindow group_display_scroller; + Gtk::ScrolledWindow favorite_plugins_scroller; Gtk::VBox group_display_vbox; Gtk::Frame track_display_frame; Gtk::Frame group_display_frame; + Gtk::Frame favorite_plugins_frame; Gtk::VPaned rhs_pane1; + Gtk::VPaned rhs_pane2; Gtk::HBox strip_packer; Gtk::HBox out_packer; Gtk::HPaned list_hpane; @@ -246,14 +253,27 @@ class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR Gtk::TreeModelColumn<ARDOUR::RouteGroup*> group; }; + struct PluginsDisplayModelColumns : public Gtk::TreeModel::ColumnRecord { + PluginsDisplayModelColumns() { + add (name); + add (plugin); + } + Gtk::TreeModelColumn<std::string> name; + Gtk::TreeModelColumn<ARDOUR::PluginInfoPtr> plugin; + }; + + TrackDisplayModelColumns track_columns; GroupDisplayModelColumns group_columns; + PluginsDisplayModelColumns favorite_plugins_columns; Gtk::TreeView track_display; Gtk::TreeView group_display; + Gtkmm2ext::DnDTreeView<ARDOUR::PluginInfoPtr> favorite_plugins_display; Glib::RefPtr<Gtk::ListStore> track_model; Glib::RefPtr<Gtk::ListStore> group_model; + Glib::RefPtr<Gtk::ListStore> favorite_plugins_model; bool group_display_button_press (GdkEventButton*); void group_display_selection_changed (); @@ -297,6 +317,9 @@ class Mixer_UI : public Gtk::Window, public PBD::ScopedConnectionList, public AR void monitor_section_attached (); void monitor_section_detached (); + void refiller (ARDOUR::PluginManager& manager, const ARDOUR::PluginInfoList& plugs); + void refill_favorite_plugins (); + /// true if we are in fullscreen mode bool _maximised; |