Ejemplo n.º 1
0
bool Window::is_resizable(LilvWorld* world, const LilvUI& ui)
{
  auto& plug
      = score::GUIAppContext().applicationPlugin<Media::ApplicationPlugin>();
  auto& h = plug.lv2_host_context;
  auto s = lilv_ui_get_uri(&ui);

  Lilv::Nodes fs_matches
      = plug.lilv.find_nodes(s, h.optional_feature, h.fixed_size);
  Lilv::Nodes nrs_matches
      = plug.lilv.find_nodes(s, h.optional_feature, h.no_user_resize);

  return fs_matches.me == nullptr && nrs_matches.me == nullptr;
}
Ejemplo n.º 2
0
 SuilInstance* instantiateUI (const LilvUI* ui,
                              const LilvNode* containerType,
                              const LilvNode* widgetType,
                              const LV2_Feature* const * features)
 {
     const LilvNode* uri = lilv_ui_get_uri (ui);
     const LilvPlugin* plugin = owner.getPlugin();
     
     SuilInstance* instance = suil_instance_new (suil, &owner,
               lilv_node_as_uri (containerType),
               lilv_node_as_uri (lilv_plugin_get_uri (plugin)),
               lilv_node_as_uri (uri),
               lilv_node_as_uri (widgetType),
               lilv_uri_to_path (lilv_node_as_uri (lilv_ui_get_bundle_uri (ui))),
               lilv_uri_to_path (lilv_node_as_uri (lilv_ui_get_binary_uri (ui))),
               features );
     
     if (instance != nullptr)
     {
         // do something here?
     }
     
     return instance;
 }