summaryrefslogtreecommitdiff
path: root/gtk2_ardour/lv2_plugin_ui.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-10-01 16:28:02 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-10-01 16:28:02 +0000
commit37779a45c9c18076590295b2e342cffa99c46910 (patch)
treee179d34753964670b316ed09a56930d9711706a4 /gtk2_ardour/lv2_plugin_ui.h
parent4a46fccc6834f1cc00b02301355fc0fad8ae4083 (diff)
LV2 external UI patch from nedko via 2.X and a couple of .rej's
git-svn-id: svn://localhost/ardour2/branches/3.0@5702 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 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