summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-03-25 17:17:40 +0000
committerDavid Robillard <d@drobilla.net>2012-03-25 17:17:40 +0000
commit1716dc0ce6e0e0258d98a9e273f36b0fb622bbb8 (patch)
tree7b61c468397606e20657e2753d6f92630df41d92 /gtk2_ardour
parentd8ee15df1af5ec64d327ea25445cfa858e48cfa7 (diff)
Update to latest LV2 atom extension.
Implement proper support for fixed size LV2 plugin UIs. git-svn-id: svn://localhost/ardour2/branches/3.0@11757 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/lv2_plugin_ui.cc6
-rw-r--r--gtk2_ardour/lv2_plugin_ui.h2
-rw-r--r--gtk2_ardour/plugin_ui.cc1
-rw-r--r--gtk2_ardour/plugin_ui.h1
4 files changed, 10 insertions, 0 deletions
diff --git a/gtk2_ardour/lv2_plugin_ui.cc b/gtk2_ardour/lv2_plugin_ui.cc
index d014cddd10..7947a8e7bf 100644
--- a/gtk2_ardour/lv2_plugin_ui.cc
+++ b/gtk2_ardour/lv2_plugin_ui.cc
@@ -327,6 +327,12 @@ LV2PluginUI::get_preferred_width()
return r.width;
}
+bool
+LV2PluginUI::resizable()
+{
+ return _lv2->ui_is_resizable();
+}
+
int
LV2PluginUI::package(Gtk::Window& win)
{
diff --git a/gtk2_ardour/lv2_plugin_ui.h b/gtk2_ardour/lv2_plugin_ui.h
index d245ed31a1..e90b27cf8f 100644
--- a/gtk2_ardour/lv2_plugin_ui.h
+++ b/gtk2_ardour/lv2_plugin_ui.h
@@ -53,6 +53,8 @@ class LV2PluginUI : public PlugUIBase, public Gtk::VBox
gint get_preferred_height ();
gint get_preferred_width ();
+ bool resizable ();
+
bool start_updating(GdkEventAny*);
bool stop_updating(GdkEventAny*);
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc
index 272abcb831..b4a412aa3f 100644
--- a/gtk2_ardour/plugin_ui.cc
+++ b/gtk2_ardour/plugin_ui.cc
@@ -159,6 +159,7 @@ PluginUIWindow::PluginUIWindow (
}
set_default_size (w, h);
+ set_resizable (_pluginui->resizable());
}
PluginUIWindow::~PluginUIWindow ()
diff --git a/gtk2_ardour/plugin_ui.h b/gtk2_ardour/plugin_ui.h
index a966ed3024..2f98a28f6d 100644
--- a/gtk2_ardour/plugin_ui.h
+++ b/gtk2_ardour/plugin_ui.h
@@ -85,6 +85,7 @@ class PlugUIBase : public virtual sigc::trackable, public PBD::ScopedConnectionL
virtual gint get_preferred_height () = 0;
virtual gint get_preferred_width () = 0;
+ virtual bool resizable () { return true; }
virtual bool start_updating(GdkEventAny*) = 0;
virtual bool stop_updating(GdkEventAny*) = 0;