summaryrefslogtreecommitdiff
path: root/gtk2_ardour/lv2_plugin_ui.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-10-01 15:43:52 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-10-01 15:43:52 +0000
commit72bfc14a3596f0b086ac826e8ab2ea8cd9b44caa (patch)
tree21a2112bd706ae050b0a1818e4f32ecd5a5dd9d0 /gtk2_ardour/lv2_plugin_ui.h
parent68240a91522ac3ef00309edb59d874afe58e9dd1 (diff)
LV2 external UI patch from nedko (#2777)
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@5697 d708f5d6-7413-0410-9779-e7cbd77b26cf
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 fe8dd85cd2..9bb1fe60ae 100644
--- a/gtk2_ardour/lv2_plugin_ui.h
+++ b/gtk2_ardour/lv2_plugin_ui.h
@@ -34,6 +34,8 @@
#ifdef HAVE_LV2
+#include "lv2_external_ui.h"
+
namespace ARDOUR {
class PluginInsert;
class LV2Plugin;
@@ -60,6 +62,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,
@@ -68,12 +77,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_LV2