diff options
author | David Robillard <d@drobilla.net> | 2011-02-24 09:00:54 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2011-02-24 09:00:54 +0000 |
commit | 25bd8988fb82e6132ae6c1b87e6d0b8087d61f1b (patch) | |
tree | 63d8b4a0a69c07d012af30b711a0a9cb80a160e6 /src/pluginui.c | |
parent | 5a7ed3f46fa2e0151a0f403824ae3a7df10a6c34 (diff) | |
download | lilv-25bd8988fb82e6132ae6c1b87e6d0b8087d61f1b.tar.gz lilv-25bd8988fb82e6132ae6c1b87e6d0b8087d61f1b.tar.bz2 lilv-25bd8988fb82e6132ae6c1b87e6d0b8087d61f1b.zip |
Make Suil exclusively deal with instantiating (not choosing) UIs.
Add slv2_ui_instance_new as a replacement for slv2_ui_instantiate
(now deprecated), which supports cross-toolkit embedding by taking an
additional widget type pointer.
Remove direct Suil dependency from Ingen.
git-svn-id: http://svn.drobilla.net/lad/trunk/slv2@3022 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/pluginui.c')
-rw-r--r-- | src/pluginui.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/pluginui.c b/src/pluginui.c index d4ce24f..2c3bc94 100644 --- a/src/pluginui.c +++ b/src/pluginui.c @@ -24,6 +24,10 @@ #include "slv2_internal.h" +#ifdef HAVE_SUIL +#include "suil/suil.h" +#endif + SLV2UI slv2_ui_new(SLV2World world, SLV2Value uri, @@ -79,6 +83,20 @@ slv2_ui_get_uri(SLV2UI ui) } SLV2_API +bool +slv2_ui_supported(SLV2UI ui, + SLV2Value widget_type_uri) +{ +#ifdef HAVE_SUIL + return suil_ui_type_supported( + slv2_value_as_uri(widget_type_uri), + slv2_value_as_uri(slv2_values_get_at(ui->classes, 0))); +#else + return false; +#endif +} + +SLV2_API SLV2Values slv2_ui_get_classes(SLV2UI ui) { @@ -109,4 +127,3 @@ slv2_ui_get_binary_uri(SLV2UI ui) assert(ui->binary_uri); return ui->binary_uri; } - |