#include "automation_controller.h"
#include "ardour_button.h"
+#include "ardour_window.h"
namespace ARDOUR {
class PluginInsert;
virtual gint get_preferred_height () = 0;
virtual gint get_preferred_width () = 0;
+ virtual bool resizable () { return true; }
virtual bool start_updating(GdkEventAny*) = 0;
virtual bool stop_updating(GdkEventAny*) = 0;
ArdourButton bypass_button;
/** a button to acquire keyboard focus */
Gtk::EventBox focus_button;
+ /** an expander containing the plugin description */
+ Gtk::Expander description_expander;
/** an expander containing the plugin analysis graph */
Gtk::Expander plugin_analysis_expander;
/** a label indicating the plugin latency */
void delete_plugin_setting ();
bool focus_toggled(GdkEventButton*);
bool bypass_button_release(GdkEventButton*);
+ void toggle_description ();
void toggle_plugin_analysis ();
void processor_active_changed (boost::weak_ptr<ARDOUR::Processor> p);
void plugin_going_away ();
/* input */
Gtk::ComboBoxText* combo;
- boost::shared_ptr<ARDOUR::Plugin::ScalePoints> combo_map;
+ boost::shared_ptr<ARDOUR::Plugin::ScalePoints> scale_points;
Gtk::ToggleButton* button;
boost::shared_ptr<AutomationController> controller;
Gtkmm2ext::ClickBox* clickbox;
void start_touch (ControlUI*);
void stop_touch (ControlUI*);
+ /* XXX: remove */
void print_parameter (char *buf, uint32_t len, uint32_t param);
+ bool integer_printer (char* buf, Gtk::Adjustment &, ControlUI *);
+ bool midinote_printer(char* buf, Gtk::Adjustment &, ControlUI *);
};
-class PluginUIWindow : public Gtk::Window
+class PluginUIWindow : public ArdourWindow
{
public:
- PluginUIWindow (Gtk::Window*,
- boost::shared_ptr<ARDOUR::PluginInsert> insert,
+ PluginUIWindow (boost::shared_ptr<ARDOUR::PluginInsert> insert,
bool scrollable=false,
bool editor=true);
~PluginUIWindow ();
void set_title(const std::string& title);
- bool on_enter_notify_event (GdkEventCrossing*);
- bool on_leave_notify_event (GdkEventCrossing*);
- bool on_focus_in_event (GdkEventFocus*);
- bool on_focus_out_event (GdkEventFocus*);
bool on_key_press_event (GdkEventKey*);
bool on_key_release_event (GdkEventKey*);
void on_show ();
void on_hide ();
- void on_map ();
private:
std::string _title;
Gtk::VBox vbox;
bool was_visible;
bool _keyboard_focused;
+#ifdef AUDIOUNIT_SUPPORT
+ int pre_deactivate_x;
+ int pre_deactivate_y;
+#endif
+
void keyboard_focused (bool yn);
void app_activated (bool);