summaryrefslogtreecommitdiff
path: root/gtk2_ardour/lv2_plugin_ui.h
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/lv2_plugin_ui.h')
-rw-r--r--gtk2_ardour/lv2_plugin_ui.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/gtk2_ardour/lv2_plugin_ui.h b/gtk2_ardour/lv2_plugin_ui.h
index 622320b831..011b70e44b 100644
--- a/gtk2_ardour/lv2_plugin_ui.h
+++ b/gtk2_ardour/lv2_plugin_ui.h
@@ -38,6 +38,8 @@
#ifdef HAVE_SLV2
+#include "lv2_external_ui.h"
+
namespace ARDOUR {
class PluginInsert;
class LV2Plugin;
@@ -64,6 +66,13 @@ class LV2PluginUI : public PlugUIBase, public Gtk::VBox
Gtk::Widget* _gui_widget;
SLV2UIInstance _inst;
float* _values;
+
+ struct lv2_external_ui_host _external_ui_host;
+ LV2_Feature _external_ui_feature;
+ struct lv2_external_ui* _external_ui_ptr;
+ Gtk::Window* _win_ptr;
+
+ static void on_external_ui_closed(LV2UI_Controller controller);
static void lv2_ui_write(
LV2UI_Controller controller,
@@ -72,12 +81,17 @@ class LV2PluginUI : public PlugUIBase, public Gtk::VBox
uint32_t format,
const void* buffer);
+ void lv2ui_instantiate(const Glib::ustring& title);
+
void parameter_changed(uint32_t, float);
void parameter_update(uint32_t, float);
bool configure_handler (GdkEventConfigure*);
void save_plugin_setting ();
void output_update();
bool is_update_wanted(uint32_t index);
+
+ virtual bool on_window_show(const Glib::ustring& title);
+ virtual void on_window_hide();
};
#endif // HAVE_SLV2