X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fprocessor_box.h;h=bd5f18b947dc432abb3b9b76ac3c0af1f2d75b8d;hb=d0227fe5b7c30271cd2950a71d429cf03b0db2db;hp=f348569f71164072eb3e6150fe4a0104f42334d1;hpb=93b25e1f1332bdd9350210047dd791358f2037e6;p=ardour.git diff --git a/gtk2_ardour/processor_box.h b/gtk2_ardour/processor_box.h index f348569f71..bd5f18b947 100644 --- a/gtk2_ardour/processor_box.h +++ b/gtk2_ardour/processor_box.h @@ -119,9 +119,15 @@ public: void set_enum_width (Width); virtual void set_pixel_width (int) {} + /** Hide any widgets that should be hidden */ + virtual void hide_things () {} + protected: + virtual void setup_visuals (); + Gtk::VBox _vbox; + Position _position; private: @@ -129,7 +135,6 @@ private: void processor_active_changed (); void processor_property_changed (const PBD::PropertyChange&); std::string name () const; - void setup_visuals (); Gtk::Frame _frame; Gtk::EventBox _event_box; @@ -139,7 +144,6 @@ private: boost::shared_ptr _processor; Width _width; Gtk::StateType _visual_state; - Position _position; PBD::ScopedConnection active_connection; PBD::ScopedConnection name_connection; }; @@ -167,6 +171,28 @@ private: static Glib::RefPtr _slider; }; +class PluginInsertProcessorEntry : public ProcessorEntry +{ +public: + PluginInsertProcessorEntry (boost::shared_ptr, Width); + + void hide_things (); + +private: + void setup_visuals (); + void plugin_insert_splitting_changed (); + + /* XXX: this seems a little ridiculous just for a simple scaleable icon */ + class SplittingIcon : public Gtk::DrawingArea { + private: + bool on_expose_event (GdkEventExpose *); + }; + + boost::shared_ptr _plugin_insert; + SplittingIcon _splitting_icon; + PBD::ScopedConnection _splitting_connection; +}; + class ProcessorBox : public Gtk::HBox, public PluginInterestedObject, public ARDOUR::SessionHandlePtr { public: @@ -185,6 +211,8 @@ class ProcessorBox : public Gtk::HBox, public PluginInterestedObject, public ARD void select_all_inserts (); void select_all_sends (); + void hide_things (); + Gtk::Window* get_processor_ui (boost::shared_ptr) const; void toggle_edit_processor (boost::shared_ptr); @@ -217,8 +245,6 @@ class ProcessorBox : public Gtk::HBox, public PluginInterestedObject, public ARD void selection_changed (); - Gtk::EventBox processor_eventbox; - Gtk::HBox processor_hpacker; Gtkmm2ext::DnDVBox processor_display; Gtk::ScrolledWindow processor_scroller;