VSTPluginUI* vpu = new VSTPluginUI (insert, *vp);
_pluginui = vpu;
- add (*vpu);
+ get_vbox()->add (*vpu);
vpu->package (*this);
} else {
PluginUI* pu = new PluginUI (engine, insert, scrollable);
_pluginui = pu;
- add (*pu);
+ get_vbox()->add (*pu);
- map_event.connect (mem_fun (*pu, &PluginUI::start_updating));
- unmap_event.connect (mem_fun (*pu, &PluginUI::stop_updating));
+ signal_map_event().connect (mem_fun (*pu, &PluginUI::start_updating));
+ signal_unmap_event().connect (mem_fun (*pu, &PluginUI::stop_updating));
}
set_position (Gtk::WIN_POS_MOUSE);
engine(engine),
button_table (initial_button_rows, initial_button_cols),
output_table (initial_output_rows, initial_output_cols),
+ hAdjustment(0.0, 0.0, 0.0),
+ vAdjustment(0.0, 0.0, 0.0),
+ scroller_view(hAdjustment, vAdjustment),
automation_menu (0),
is_scrollable(scrollable)
{
frame->add (*box);
hpacker.pack_start(*frame, true, true);
- box->set_border_width (5);
- box->set_spacing (1);
-
/* find all ports. build control elements for all appropriate control ports */
for (i = 0; i < plugin.parameter_count(); ++i) {
if (defaults && defaults->count > 0) {
- control_ui->combo = new Gtk::Combo;
- control_ui->combo->set_value_in_list(true, false);
+ control_ui->combo = new Gtk::ComboBoxText;
+ //control_ui->combo->set_value_in_list(true, false);
set_popdown_strings (*control_ui->combo, setup_scale_values(port_index, control_ui));
- control_ui->combo->signal_unmap_event().connect( mem_fun(*this, &PluginUI::control_combo_changed), control_ui);
- plugin.ParameterChanged.connect (bind (mem_fun(*this, &PluginUI::parameter_changed), control_ui));
+ control_ui->combo->signal_changed().connect (bind (mem_fun(*this, &PluginUI::control_combo_changed), control_ui));
+ plugin.ParameterChanged.connect (bind (mem_fun (*this, &PluginUI::parameter_changed), control_ui));
control_ui->pack_start(control_ui->label, true, true);
control_ui->pack_start(*control_ui->combo, false, true);
control_ui->control->set_style (BarController::LeftToRight);
control_ui->control->set_use_parent (true);
- control_ui->control->get_spin_button().signal_focus_in_event().connect (mem_fun(*this, &PluginUI::entry_focus_event));
- control_ui->control->get_spin_button().signal_focus_out_event().connect (mem_fun(*this, &PluginUI::entry_focus_event));
-
control_ui->control->StartGesture.connect (bind (mem_fun(*this, &PluginUI::start_touch), control_ui));
control_ui->control->StopGesture.connect (bind (mem_fun(*this, &PluginUI::stop_touch), control_ui));
}
}
-gint
-PluginUI::control_combo_changed (GdkEventAny* ignored, ControlUI* cui)
+void
+PluginUI::control_combo_changed (ControlUI* cui)
{
if (!cui->ignore_change) {
string value = cui->combo->get_active_text();
insert.set_parameter (cui->port_index, mapping[value]);
}
- return FALSE;
}
void
delete_when_idle (this);
}
-gint
-PluginUI::entry_focus_event (GdkEventFocus* ev)
-{
- if (ev->in) {
- ARDOUR_UI::instance()->allow_focus (true);
- } else {
- ARDOUR_UI::instance()->allow_focus (false);
- }
- return TRUE;
-}
-
void
PluginUI::redirect_active_changed (Redirect* r, void* src)
{
bypass_button.set_active (!r->active());
}
-gint
-PluginUI::start_updating (GdkEventAny *ev)
+bool
+PluginUI::start_updating (GdkEventAny* ignored)
{
if (output_controls.size() > 0 ) {
screen_update_connection.disconnect();
screen_update_connection = ARDOUR_UI::instance()->RapidScreenUpdate.connect
(mem_fun(*this, &PluginUI::output_update));
}
- return FALSE;
+ return false;
}
-gint
-PluginUI::stop_updating (GdkEventAny *ev)
+bool
+PluginUI::stop_updating (GdkEventAny* ignored)
{
if (output_controls.size() > 0 ) {
screen_update_connection.disconnect();
}
- return FALSE;
+ return false;
}
void
}
}
-list<string>
+vector<string>
PluginUI::setup_scale_values(guint32 port_index, ControlUI* cui)
{
- list<string> enums;
+ vector<string> enums;
LadspaPlugin* lp = dynamic_cast<LadspaPlugin*> (&plugin);
cui->combo_map = new std::map<string, float>;
save_button(_("save")),
bypass_button (_("bypass"))
{
- combo.set_value_in_list(true,true);
- combo.set_use_arrows(true);
- combo.set_use_arrows_always(true);
+ //combo.set_use_arrows_always(true);
set_popdown_strings (combo, plugin.get_presets());
combo.set_active_text ("");
- combo.signal_unmap_event().connect(mem_fun(*this, &PlugUIBase::setting_selected));
+ combo.signal_changed().connect(mem_fun(*this, &PlugUIBase::setting_selected));
save_button.set_name ("PluginSaveButton");
save_button.signal_clicked().connect(mem_fun(*this, &PlugUIBase::save_plugin_setting));
bypass_button.signal_toggled().connect (mem_fun(*this, &PlugUIBase::bypass_toggled));
}
-gint
-PlugUIBase::setting_selected(GdkEventAny* ignored)
+void
+PlugUIBase::setting_selected()
{
if (combo.get_active_text().length() > 0) {
if (!plugin.load_preset(combo.get_active_text())) {
}
}
- return FALSE;
}
void
prompter.show_all();
switch (prompter.run ()) {
- case GTK_RESPONSE_ACCEPT:
+ case Gtk::RESPONSE_ACCEPT:
string name;