28 #include "gtk2ardour-config.h"
35 #include <sigc++/signal.h>
67 class WindowsVSTPlugin;
123 std::shared_ptr<ARDOUR::PlugInsertBase>
_pib;
124 std::shared_ptr<ARDOUR::PluginInsert>
_pi;
221 GenericPluginUI (std::shared_ptr<ARDOUR::PlugInsertBase> plug,
bool scrollable =
false,
bool ctrls_only =
false);
258 std::shared_ptr<ARDOUR::AutomationControl>
control;
306 std::shared_ptr<ARDOUR::AutomationControl> mcontrol,
354 bool scrollable =
false,
378 #ifdef AUDIOUNIT_SUPPORT
379 int pre_deactivate_x;
380 int pre_deactivate_y;
398 #ifdef MACVST_SUPPORT
402 extern VSTPluginUI* create_mac_vst_gui (std::shared_ptr<ARDOUR::PlugInsertBase>);
405 #ifdef AUDIOUNIT_SUPPORT
gint get_preferred_height()
Gtk::Expander _plugin_pianokeyboard_expander
ControlUI * build_control_ui(const Evoral::Parameter ¶m, const ARDOUR::ParameterDescriptor &desc, std::shared_ptr< ARDOUR::AutomationControl > mcontrol, float value, bool is_input)
void midi_bank_patch_change(uint8_t chn)
void midi_bank_patch_select(uint8_t chn, uint32_t bankpgm)
bool start_updating(GdkEventAny *)
void automatic_layout(const std::vector< ControlUI * > &control_uis)
FilePathControls _filepath_controls
Gtk::SpinButton _piano_velocity
Gtk::Menu * automation_menu
void midi_refill_patches()
std::vector< ControlUI * > output_controls
std::vector< ArdourWidgets::ArdourDropdown * > midi_pgmsel
void ui_parameter_changed(ControlUI *cui)
void update_control_display(ControlUI *cui)
void set_automation_state(ARDOUR::AutoState state, ControlUI *cui)
void set_path_property(const ARDOUR::ParameterDescriptor &desc, Gtk::FileChooserButton *widget)
void automation_state_changed(ControlUI *)
void control_combo_changed(ControlUI *cui, float value)
void set_all_automation(ARDOUR::AutoState state)
std::map< uint32_t, std::string > pgm_names
sigc::connection screen_update_connection
void path_property_changed(uint32_t key, const ARDOUR::Variant &value)
GenericPluginUI(std::shared_ptr< ARDOUR::PlugInsertBase > plug, bool scrollable=false, bool ctrls_only=false)
bool stop_updating(GdkEventAny *)
void toggle_pianokeyboard()
gint get_preferred_width()
std::vector< ControlUI * > input_controls_with_automation
void note_on_event_handler(int, int)
void scroller_size_request(Gtk::Requisition *)
bool astate_button_event(GdkEventButton *ev, ControlUI *)
void set_short_autostate(ControlUI *cui, bool value)
void update_input_displays()
void note_off_event_handler(int)
Gtk::SpinButton _piano_channel
Gtk::ScrolledWindow scroller
std::vector< ControlUI * > input_controls
std::map< uint32_t, Gtk::FileChooserButton * > FilePathControls
PBD::ScopedConnectionList midi_connections
void knob_size_request(Gtk::Requisition *req, ControlUI *cui)
virtual void on_window_hide()
void update_preset_list()
Gtk::Image * _focus_in_image
bool focus_toggled(GdkEventButton *)
virtual void preset_selected(ARDOUR::Plugin::PresetRecord preset)
virtual bool stop_updating(GdkEventAny *)=0
PBD::ScopedConnection preset_removed_connection
ArdourWidgets::ArdourButton _add_button
Gtk::EventBox _focus_button
ArdourWidgets::ArdourButton automation_latch_all_button
void set_tailtime_label()
virtual void forward_key_event(GdkEventKey *)
ArdourWindow * tailtime_dialog
virtual gint get_preferred_width()=0
void add_plugin_setting()
ArdourWidgets::ArdourButton _pin_management_button
virtual bool non_gtk_gui() const
Gtk::Label _preset_modified
void update_preset_modified()
PBD::ScopedConnection active_connection
ArdourWidgets::ArdourButton automation_play_all_button
std::shared_ptr< ARDOUR::PlugInsertBase > _pib
Gtk::Image * _focus_out_image
PluginPresetsUI * preset_gui
void delete_plugin_setting()
virtual gint get_preferred_height()=0
void latency_button_clicked()
std::shared_ptr< ARDOUR::PluginInsert > _pi
ArdourWidgets::ArdourButton _save_button
virtual bool is_external_visible() const
ArdourWidgets::ArdourButton _reset_button
Gtk::Expander plugin_analysis_expander
Gtk::Expander description_expander
void toggle_cpuload_display()
void toggle_plugin_analysis()
virtual bool on_window_show(const std::string &)
void reset_plugin_parameters()
virtual void deactivate()
void automation_state_changed()
PluginLoadStatsGui * stats_gui
ArdourWidgets::ArdourButton automation_touch_all_button
void processor_active_changed(std::weak_ptr< ARDOUR::Processor > p)
sigc::signal< void, bool > KeyboardFocused
void toggle_description()
ArdourWidgets::ArdourButton automation_manual_all_button
virtual bool is_external() const
void save_plugin_setting()
ArdourWindow * latency_dialog
void tailtime_button_clicked()
TimeCtlGUI * tailtime_gui
ArdourWidgets::ArdourButton _preset_browser_button
ArdourWidgets::ArdourButton _tailtime_button
void add_common_widgets(Gtk::HBox *, bool with_focus=true)
Gtk::Expander cpuload_expander
PBD::ScopedConnectionList control_connections
PlugUIBase(std::shared_ptr< ARDOUR::PlugInsertBase >)
PBD::ScopedConnection death_connection
ArdourWidgets::ArdourButton _bypass_button
PBD::ScopedConnection preset_added_connection
ArdourWindow * preset_dialog
void preset_added_or_removed()
virtual bool start_updating(GdkEventAny *)=0
ArdourWidgets::ArdourButton _delete_button
bool bypass_button_release(GdkEventButton *)
std::shared_ptr< ARDOUR::Plugin > plugin
ArdourWidgets::ArdourButton automation_write_all_button
bool has_descriptive_presets() const
virtual void grab_focus()
ArdourWidgets::ArdourButton _latency_button
ArdourWidgets::ArdourDropdown _preset_combo
void keyboard_focused(bool yn)
bool create_windows_vst_editor(std::shared_ptr< ARDOUR::PlugInsertBase >)
void on_hide()
This is a default handler for the signal signal_hide().
bool create_lv2_editor(std::shared_ptr< ARDOUR::PlugInsertBase >)
bool create_vst3_editor(std::shared_ptr< ARDOUR::PlugInsertBase >)
void set_title(const std::string &title)
void set_parent(Gtk::Window *)
bool create_lxvst_editor(std::shared_ptr< ARDOUR::PlugInsertBase >)
bool create_audiounit_editor(std::shared_ptr< ARDOUR::PlugInsertBase >)
bool on_key_press_event(GdkEventKey *)
This is a default handler for the signal signal_key_press_event().
static PluginUIWindow * the_plugin_window
bool on_key_release_event(GdkEventKey *)
This is a default handler for the signal signal_key_release_event().
PluginUIWindow(std::shared_ptr< ARDOUR::PlugInsertBase >, bool scrollable=false, bool editor=true)
void on_show()
This is a default handler for the signal signal_show().
PBD::ScopedConnection death_connection
bool create_mac_vst_editor(std::shared_ptr< ARDOUR::PlugInsertBase >)
std::shared_ptr< PBD::Controllable > Controllable
Gtk::FileChooserButton * file_button
ArdourWidgets::ArdourButton automate_button
std::shared_ptr< AutomationController > controller
std::shared_ptr< ARDOUR::ScalePoints > scale_points
Gtk::Label * display_label
ControlUI(const Evoral::Parameter ¶m)
ArdourWidgets::ArdourSpinner * spin_box
const Evoral::Parameter parameter() const
ArdourWidgets::ArdourDropdown * combo
std::shared_ptr< ARDOUR::AutomationControl > control
ArdourWidgets::FastMeter * meter