From 4c3595e41c0e6955f667cbcfc43c0e9c3c99136e Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 23 Feb 2011 07:33:14 +0000 Subject: 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 --- src/suil_internal.h | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/suil_internal.h') 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) */ -- cgit v1.2.1