LilvNode* time_Position;
LilvNode* ui_GtkUI;
LilvNode* ui_external;
+ LilvNode* ui_externalkx;
private:
bool _bundle_checked;
if (!_impl->ui) {
LILV_FOREACH(uis, i, uis) {
const LilvUI* ui = lilv_uis_get(uis, i);
- if (lilv_ui_is_a(ui, _world.ui_external)) {
+ if (lilv_ui_is_a(ui, _world.ui_externalkx)) {
_impl->ui = ui;
_impl->ui_type = _world.ui_external;
break;
}
+ if (lilv_ui_is_a(ui, _world.ui_external)) {
+ _impl->ui = ui;
+ _impl->ui_type = _world.ui_external;
+ }
}
}
}
if (!_impl->ui) {
return false;
}
- return lilv_ui_is_a(_impl->ui, _world.ui_external);
+ return lilv_ui_is_a(_impl->ui, _world.ui_external) || lilv_ui_is_a(_impl->ui, _world.ui_externalkx);
+}
+
+bool
+LV2Plugin::is_external_kx() const
+{
+ if (!_impl->ui) {
+ return false;
+ }
+ return lilv_ui_is_a(_impl->ui, _world.ui_externalkx);
}
bool
time_Position = lilv_new_uri(world, LV2_TIME__Position);
ui_GtkUI = lilv_new_uri(world, LV2_UI__GtkUI);
ui_external = lilv_new_uri(world, "http://lv2plug.in/ns/extensions/ui#external");
+ ui_externalkx = lilv_new_uri(world, "http://kxstudio.sf.net/ns/lv2ext/external-ui#Widget");
}
LV2World::~LV2World()
{
+ lilv_node_free(ui_externalkx);
lilv_node_free(ui_external);
lilv_node_free(ui_GtkUI);
lilv_node_free(time_Position);