summaryrefslogtreecommitdiffstats
path: root/src/suil_internal.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2011-02-23 07:33:14 +0000
committerDavid Robillard <d@drobilla.net>2011-02-23 07:33:14 +0000
commit4c3595e41c0e6955f667cbcfc43c0e9c3c99136e (patch)
treeb5eaf9f4a3f8c6f1a81cfdd8b5bc9770af03c673 /src/suil_internal.h
parentfcf7bfe09eb7d4b9a0445ae6f0ac2e933a260189 (diff)
downloadsuil-4c3595e41c0e6955f667cbcfc43c0e9c3c99136e.tar.gz
suil-4c3595e41c0e6955f667cbcfc43c0e9c3c99136e.tar.bz2
suil-4c3595e41c0e6955f667cbcfc43c0e9c3c99136e.zip
Support for wrapping Qt4 UIs for Gtk2 hosts and vice versa via modules.
Qt4 in Gtk2 is tested working (Float in Ingen). Gtk2 in Qt4 is untested (and thus unlikely to work yet). git-svn-id: http://svn.drobilla.net/lad/trunk/suil@3016 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/suil_internal.h')
-rw-r--r--src/suil_internal.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/suil_internal.h b/src/suil_internal.h
index ed7ebd2..23de999 100644
--- a/src/suil_internal.h
+++ b/src/suil_internal.h
@@ -47,7 +47,8 @@ struct _SuilInstance {
void* lib_handle;
const LV2UI_Descriptor* descriptor;
LV2UI_Handle handle;
- LV2UI_Widget widget;
+ LV2UI_Widget ui_widget;
+ LV2UI_Widget host_widget;
};
/** Get the UI with the given URI. */
@@ -60,6 +61,20 @@ SuilUI
suil_uis_get_best(SuilUIs uis,
const char* type_uri);
+/** Type of a module's suil_wrap_init function.
+ * This initialisation function must be called before instantiating any
+ * UI that will need to be wrapped by this wrapper (e.g. it will perform any
+ * initialisation required to create a widget for the given toolkit).
+ */
+typedef int (*SuilWrapInitFunc)(const char* host_type_uri,
+ const char* ui_type_uri,
+ const LV2_Feature* const* features);
+
+
+typedef int (*SuilWrapFunc)(const char* host_type_uri,
+ const char* ui_type_uri,
+ SuilInstance instance);
+
typedef void (*SuilVoidFunc)();
/** dlsym wrapper to return a function pointer (without annoying warning) */