summaryrefslogtreecommitdiff
path: root/gtk2_ardour/au_pluginui.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-04-27 00:02:59 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-04-27 00:03:14 -0400
commit2cc7faab21df6d3732d35fa71607999d690ddf73 (patch)
tree0ac26eb7e4d6df90ddeb0b303df11b005dd5b4a4 /gtk2_ardour/au_pluginui.h
parent9634888bf3e820e2507f866ff03fd1760f6a310f (diff)
significant reworking of AudioUnit window resizing.
Tested on Apple Multiban Comp, Apple Dynamics Proc, AU Sampler, Zebra2 and Zebralette. Still have a 1-2 pixel white border at lower and right edge after window is dragged larger. Also, debug output.
Diffstat (limited to 'gtk2_ardour/au_pluginui.h')
-rw-r--r--gtk2_ardour/au_pluginui.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/gtk2_ardour/au_pluginui.h b/gtk2_ardour/au_pluginui.h
index 883e7e0d6c..bc7d9a521b 100644
--- a/gtk2_ardour/au_pluginui.h
+++ b/gtk2_ardour/au_pluginui.h
@@ -65,6 +65,12 @@ class AUPluginUI;
}
@end
+@interface LiveResizeNotificationObject : NSObject {
+ @private
+ AUPluginUI* plugin_ui;
+}
+@end
+
class AUPluginUI : public PlugUIBase, public Gtk::VBox
{
public:
@@ -100,6 +106,9 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
OSStatus carbon_event (EventHandlerCallRef nextHandlerRef, EventRef event);
+ void start_live_resize ();
+ void end_live_resize ();
+
private:
WindowRef wr;
boost::shared_ptr<ARDOUR::AUPlugin> au;
@@ -129,6 +138,8 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
NSWindow* cocoa_window;
NSView* au_view;
NSRect last_au_frame;
+ bool in_live_resize;
+ uint32_t plugin_requested_resize;
/* Carbon */
@@ -136,9 +147,13 @@ class AUPluginUI : public PlugUIBase, public Gtk::VBox
ComponentDescription carbon_descriptor;
AudioUnitCarbonView editView;
WindowRef carbon_window;
- EventHandlerRef carbon_event_handler;
+ EventHandlerRef carbon_event_handler;
bool _activating_from_app;
+
+ /* Generic */
+
NotificationObject* _notify;
+ LiveResizeNotificationObject* _resize_notify;
bool test_cocoa_view_support ();
bool test_carbon_view_support ();