- BC_Title *title;
- int x = 10, y = 10, x1;
- add_subwindow(title = new BC_Title(x, y, plugin->title));
-#ifdef HAVE_LV2UI
- x1 = get_w() - BC_GenericButton::calculate_w(this, _("UI")) - 8;
- add_subwindow(ui = new PluginLV2ClientUI(this, x1, y));
-#else
- ui = 0;
-#endif
- y += title->get_h() + 10;
- add_subwindow(varbl = new BC_Title(x, y, ""));
- add_subwindow(range = new BC_Title(x+160, y, ""));
- x1 = get_w() - BC_GenericButton::calculate_w(this, _("Reset")) - 8;
- add_subwindow(reset = new PluginLV2ClientReset(this, x1, y));
- y += title->get_h() + 10;
- x1 = get_w() - BC_GenericButton::calculate_w(this, _("Apply")) - 8;
- add_subwindow(apply = new PluginLV2ClientApply(this, x1, y));
- add_subwindow(text = new PluginLV2ClientText(this, x, y, x1-x - 8));
- y += title->get_h() + 10;
- add_subwindow(pot = new PluginLV2ClientPot(this, x, y));
- x1 = x + pot->get_w() + 10;
- add_subwindow(slider = new PluginLV2ClientSlider(this, x1, y+10));
- y += pot->get_h() + 10;
-
- plugin->init_lv2();
- plugin->load_configuration();
- plugin->config.update();
-
- int panel_x = x, panel_y = y;
- int panel_w = get_w()-10 - panel_x;
- int panel_h = get_h()-10 - panel_y;
- panel = new PluginLV2Client_OptPanel(this, panel_x, panel_y, panel_w, panel_h);
- add_subwindow(panel);
- panel->update();
- show_window(1);
-}
-
-int PluginLV2ClientWindow::resize_event(int w, int h)
-{
- int x1;
-#ifdef HAVE_LV2UI
- x1 = w - ui->get_w() - 8;
- ui->reposition_window(x1, ui->get_y());
-#endif
- x1 = w - reset->get_w() - 8;
- reset->reposition_window(x1, reset->get_y());
- x1 = w - apply->get_w() - 8;
- apply->reposition_window(x1, apply->get_y());
- text->reposition_window(text->get_x(), text->get_y(), x1-text->get_x() - 8);
- x1 = pot->get_x() + pot->get_w() + 10;
- int w1 = w - slider->get_x() - 20;
- slider->set_pointer_motion_range(w1);
- slider->reposition_window(x1, slider->get_y(), w1, slider->get_h());
- int panel_x = panel->get_x(), panel_y = panel->get_y();
- panel->reposition_window(panel_x, panel_y, w-10-panel_x, h-10-panel_y);
- return 1;
-}
-
-PluginLV2ClientPot::PluginLV2ClientPot(PluginLV2ClientWindow *gui, int x, int y)
- : BC_FPot(x, y, 0.f, 0.f, 0.f)
-{
- this->gui = gui;
-}
-
-int PluginLV2ClientPot::handle_event()
-{
- if( gui->selected ) {
- gui->selected->update(get_value());
- gui->update_selected();
- gui->plugin->send_configure_change();
- }
- return 1;