00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __AICONTROLBAR_H__
00022 #define __AICONTROLBAR_H__
00023
00024 #include "AITypes.h"
00025 #include "IAIUnicodeString.h"
00026
00027 #include "AIHeaderBegin.h"
00028
00031
00032
00033
00034
00035
00036
00037 #define kAIControlBarSuite "AI Control Bar Suite"
00038 #define kAIControlBarSuiteVersion2 AIAPI_VERSION(2)
00039 #define kAIControlBarSuiteVersion kAIControlBarSuiteVersion2
00040 #define kAIControlBarVersion kAIControlBarSuiteVersion
00041
00042
00043
00044
00045
00046
00047 #ifdef WIN_ENV
00048 typedef HWND AIControlBarPlatformWindow;
00049 #elif MAC_ENV
00050 #ifdef __OBJC__
00051 @class NSView;
00052 typedef NSView* AIControlBarPlatformWindow;
00053 #else
00054 typedef void* AIControlBarPlatformWindow;
00055 #endif
00056 #else
00057 #error unknown configuration
00058 #endif
00059
00061 typedef struct _opaque_AIControlBar* AIControlBarRef;
00062
00064 typedef void* AIControlBarUserData;
00065
00070 typedef void AIAPI (*AIControlBarVisibilityChangedNotifyProc)(AIControlBarRef inControlBar, AIBoolean isVisible);
00071
00075 typedef void AIAPI (*AIControlBarSizeChangedNotifyProc)(AIControlBarRef inControlBar);
00076
00077
00078
00079
00080
00081
00082
00085 #define kAIInvalidControlBarRef 'INVD'
00086
00087
00088
00089
00090
00091
00092
00093
00100 struct AIControlBarSuite{
00101
00110 AIAPI AIErr (*Create)(SPPluginRef inPluginRef, const AISize& inControlBarSize, AIReal inMinWidth, AIReal inMaxWidth,
00111 AIControlBarUserData inUserData, AIControlBarRef& outControlBar);
00112
00113
00118 AIAPI AIErr (*Destroy)(AIControlBarRef inControlBar);
00119
00120
00125 AIAPI AIErr (*GetUserData)(AIControlBarRef inControlBar, AIControlBarUserData& outUserData);
00126
00127
00132 AIAPI AIErr (*SetUserData)(AIControlBarRef inControlBar, AIControlBarUserData inUserData);
00133
00134
00139 AIAPI AIErr (*GetPlatformWindow)(AIControlBarRef inControlBar, AIControlBarPlatformWindow& outControlBarPlatformWindow);
00140
00141
00146 AIAPI AIErr (*Show)(AIControlBarRef inControlBar, AIBoolean inShow);
00147
00148
00153 AIAPI AIErr (*IsShown)(AIControlBarRef inControlBar, AIBoolean& outIsShown);
00154
00155
00160 AIAPI AIErr (*GetWidth)(AIControlBarRef inControlBar, AIReal& outControlBarWidth);
00161
00162
00167 AIAPI AIErr (*SetWidth)(AIControlBarRef inControlBar, AIReal inControlBarWidth);
00168
00169
00174 AIAPI AIErr (*GetMinimumWidth)(AIControlBarRef inControlBar, AIReal& outMinWidth);
00175
00176
00181 AIAPI AIErr (*SetMinimumWidth)(AIControlBarRef inControlBar, AIReal inMinWidth);
00182
00183
00188 AIAPI AIErr (*GetMaximumWidth)(AIControlBarRef inControlBar, AIReal& outMaxWidth);
00189
00190
00195 AIAPI AIErr (*SetMaximumWidth)(AIControlBarRef inControlBar, AIReal inMaxWidth);
00196
00197
00202 AIAPI AIErr (*Move)(AIControlBarRef inControlBar, const AIPoint& inPoint);
00203
00204
00209 AIAPI AIErr (*SetVisibilityChangedNotifyProc)(AIControlBarRef inControlBar, AIControlBarVisibilityChangedNotifyProc inVisibilityChangedNotifyProc);
00210
00211
00216 AIAPI AIErr (*SetSizeChangedNotifyProc)(AIControlBarRef inControlBar, AIControlBarSizeChangedNotifyProc inSizeChangedNotifyProc);
00217 };
00218
00219 #include "AIHeaderEnd.h"
00220
00221 #endif //__AICONTROLBAR_H__