#include <gtkmm/menu.h>
#include <gtkmm/scrolledwindow.h>
-#include "gtkmm2ext/auto_spin.h"
#include "gtkmm2ext/bindings.h"
-#include "gtkmm2ext/click_box.h"
#include "gtkmm2ext/dndtreeview.h"
#include "gtkmm2ext/dndvbox.h"
-#include "gtkmm2ext/pixfader.h"
#include "gtkmm2ext/persistent_tooltip.h"
#include "pbd/stateful.h"
#include "pbd/fastlog.h"
+#include "widgets/ardour_button.h"
+#include "widgets/ardour_fader.h"
+#include "widgets/slider_controller.h"
+
#include "plugin_interest.h"
+#include "plugin_display.h"
#include "io_selector.h"
#include "send_ui.h"
#include "enums.h"
-#include "ardour_button.h"
#include "window_manager.h"
class MotionController;
Gtk::Menu* build_send_options_menu ();
protected:
- ArdourButton _button;
+ ArdourWidgets::ArdourButton _button;
Gtk::VBox _vbox;
Position _position;
uint32_t _position_num;
std::string state_id () const;
void set_tooltip ();
+ void start_touch ();
+ void end_touch ();
+
boost::weak_ptr<ARDOUR::AutomationControl> _control;
/* things for a slider */
Gtk::Adjustment _adjustment;
- Gtkmm2ext::HSliderController _slider;
+ ArdourWidgets::HSliderController _slider;
Gtkmm2ext::PersistentTooltip _slider_persistant_tooltip;
/* things for a button */
- ArdourButton _button;
+ ArdourWidgets::ArdourButton _button;
bool _ignore_ui_adjustment;
PBD::ScopedConnectionList _connections;
bool _visible;
void toggle_panner_link ();
void toggle_allow_feedback ();
- class PluginDisplay : public Gtk::DrawingArea {
+ class PluginInlineDisplay : public PluginDisplay {
public:
- PluginDisplay(ProcessorEntry&, boost::shared_ptr<ARDOUR::Plugin>, uint32_t max_height = 80);
- virtual ~PluginDisplay();
+ PluginInlineDisplay(ProcessorEntry&, boost::shared_ptr<ARDOUR::Plugin>, uint32_t max_height = 80);
+ ~PluginInlineDisplay() {}
protected:
- bool on_expose_event (GdkEventExpose *);
void on_size_request (Gtk::Requisition* req);
bool on_button_press_event (GdkEventButton *ev);
- bool on_button_release_event (GdkEventButton *ev);
-
- void plugin_going_away () {
- _qdraw_connection.disconnect ();
- }
-
void update_height_alloc (uint32_t inline_height);
- virtual uint32_t render_inline (cairo_t *, uint32_t width);
+
+ void display_frame (cairo_t* cr, double w, double h);
ProcessorEntry& _entry;
- boost::shared_ptr<ARDOUR::Plugin> _plug;
- PBD::ScopedConnection _qdraw_connection;
- PBD::ScopedConnection _death_connection;
- cairo_surface_t* _surf;
- uint32_t _max_height;
- uint32_t _cur_height;
bool _scroll;
};
- class LuaPluginDisplay : public PluginDisplay {
+ class LuaPluginDisplay : public PluginInlineDisplay {
public:
LuaPluginDisplay(ProcessorEntry&, boost::shared_ptr<ARDOUR::LuaProc>, uint32_t max_height = 80);
~LuaPluginDisplay();