1 /********************************************************************** 2 3 Audacity: A Digital Audio Editor 4 5 VSTControlOSX.h 6 7 Leland Lucius 8 9 **********************************************************************/ 10 11 #ifndef AUDACITY_VSTCONTROLOSX_H 12 #define AUDACITY_VSTCONTROLOSX_H 13 14 #if !defined(_LP64) 15 #include <Carbon/Carbon.h> 16 #endif 17 18 #include <wx/osx/core/private.h> 19 #include <wx/osx/cocoa/private.h> 20 21 #include "VSTControl.h" 22 23 class VSTControlImpl final : public wxWidgetCocoaImpl 24 { 25 public : 26 VSTControlImpl(wxWindowMac *peer, NSView *view); 27 ~VSTControlImpl(); 28 }; 29 30 class VSTControl : public VSTControlBase 31 { 32 public: 33 VSTControl(); 34 ~VSTControl(); 35 36 bool Create(wxWindow *parent, VSTEffectLink *link); 37 void Close(); 38 39 private: 40 void CreateCocoa(); 41 42 #if !defined(_LP64) 43 void CreateCarbon(); 44 void OnSize(wxSizeEvent & evt); 45 #endif 46 47 private: 48 NSView *mVSTView; 49 NSView *mView; 50 51 #if !defined(_LP64) 52 WindowRef mWindowRef; 53 HIViewRef mHIView; 54 #endif 55 }; 56 57 #endif 58