ASPiK SDK
AAXPluginGUI.h
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------
2 // ASPiK AAX Shell File: aaxplugingui.h
3 //
20 // -----------------------------------------------------------------------------
21 #pragma once
22 
23 #ifndef RACKAFX_GUI_H
24 #define RACKAFX_GUI_H
25 
26 #include "AAX_CEffectGUI.h"
27 #include "AAXPluginParameters.h"
28 #include "plugingui.h"
29 
30 #if defined AAXPLUGIN && !defined _WINDOWS && !defined _WINDLL
31 #include <CoreFoundation/CoreFoundation.h>
32 #endif
33 
34 #include "AAX_IViewContainer.h"
35 
53 class AAXPluginGUI : public AAX_CEffectGUI, public IGUIWindowFrame
54 {
55 public:
56  AAXPluginGUI(void);
57  ~AAXPluginGUI(void);
58 
60  static AAX_IEffectGUI* AAX_CALLBACK Create( void );
61 
62  // --- AAX_CEffectGUI overrides
63  virtual void CreateViewContainer();
64  virtual void DeleteViewContainer();
65  virtual void CreateViewContents();
66  virtual AAX_Result ParameterUpdated(const char* iParameterID);
67  virtual AAX_Result Draw(AAX_Rect* iDrawRect);
68  virtual AAX_Result TimerWakeup(void);
69 
71  virtual AAX_Result GetViewSize(AAX_Point* oEffectViewSize) const;
72 
74  virtual bool setWindowFrameSize(double left = 0, double top = 0, double right = 0, double bottom = 0)
75  {
76  AAX_IViewContainer* iVC = GetViewContainer();
77  if(iVC)
78  {
79  // --- NOTE: height, width
80  AAX_Point size( (float)(bottom - top), (float)(right - left) );
81  iVC->SetViewSize(size);
82  return true;
83  }
84 
85  return false;
86  }
87 
89  virtual bool getWindowFrameSize(double& left, double& top, double& right, double& bottom)
90  {
91  left = 0;
92  top = 0;
93  right = (CCoord)guiWidth;
94  bottom = (CCoord)guiHeight;
95  return true;
96  }
97 
98  protected:
99  int guiWidth = 100;
100  int guiHeight = 100;
102  PluginGUI* pluginGUI;
103  bool pureCustomGUI = false;
104 };
105 
106 
107 
108 #endif
AAXPluginGUI(void)
object constructor
Definition: AAXPluginGUI.cpp:50
virtual void DeleteViewContainer()
AAX_CEffectGUI override.
Definition: AAXPluginGUI.cpp:309
virtual AAX_Result Draw(AAX_Rect *iDrawRect)
AAX_CEffectGUI override.
Definition: AAXPluginGUI.cpp:242
interface file for ASPiK GUI object
int guiWidth
size parameter
Definition: AAXPluginGUI.h:99
virtual AAX_Result ParameterUpdated(const char *iParameterID)
AAX_CEffectGUI override.
Definition: AAXPluginGUI.cpp:275
Structure of data that is passed to GUI object once at creation time.
Definition: AAXPluginParameters.h:71
virtual AAX_Result GetViewSize(AAX_Point *oEffectViewSize) const
for sizing the GUI
Definition: AAXPluginGUI.cpp:339
~AAXPluginGUI(void)
object destructor
Definition: AAXPluginGUI.cpp:69
bool pureCustomGUI
not used
Definition: AAXPluginGUI.h:103
virtual void CreateViewContainer()
AAX_CEffectGUI override.
Definition: AAXPluginGUI.cpp:102
int guiHeight
size parameter
Definition: AAXPluginGUI.h:100
virtual bool setWindowFrameSize(double left=0, double top=0, double right=0, double bottom=0)
Definition: AAXPluginGUI.h:74
virtual bool getWindowFrameSize(double &left, double &top, double &right, double &bottom)
Definition: AAXPluginGUI.h:89
pluginCustomData customData
custom data struct used for moving information from parameters during early construction phase ...
Definition: AAXPluginGUI.h:101
static AAX_IEffectGUI *AAX_CALLBACK Create(void)
creation mechanism for this object
Definition: AAXPluginGUI.cpp:84
virtual void CreateViewContents()
AAX_CEffectGUI override.
Definition: AAXPluginGUI.cpp:356
PluginGUI * pluginGUI
the ASPiK GUI - NOTE that this is maintained only for constructing and destroying the GUI ...
Definition: AAXPluginGUI.h:102
Custom interface to allow resizing of GUI window; this is mainly used for the GUI designer...
Definition: pluginstructures.h:1176
The AAXPluginGUI is the GUI object for AAX. It creates and destroys the ASPiK GUI. It also synchronizes GUI and parameters as described in detail in the book source below.
Definition: AAXPluginGUI.h:53
interface file for the AAXPluginParameters object; this code is based heavily off of the monolithic p...
virtual AAX_Result TimerWakeup(void)
AAX_CEffectGUI override.
Definition: AAXPluginGUI.cpp:255