]>
Commit | Line | Data |
---|---|---|
cfcc3671 UJ |
1 | ///////////////////////////////////////////////////////////////////////////// |
2 | // Name: uma.h | |
3 | // Purpose: Universal MacOS API | |
4 | // Author: Stefan Csomor | |
5 | // Modified by: | |
6 | // Created: 03/02/99 | |
2dbc444a | 7 | // RCS-ID: $Id: |
cfcc3671 | 8 | // Copyright: (c) Stefan Csomor |
e40298d5 | 9 | // Licence: wxWindows licence |
cfcc3671 UJ |
10 | ///////////////////////////////////////////////////////////////////////////// |
11 | ||
12 | #ifndef H_UMA | |
13 | #define H_UMA | |
14 | ||
5273bf2f | 15 | #include "wx/mac/private.h" |
cfcc3671 | 16 | |
e128397f | 17 | void UMAInitToolbox( UInt16 inMoreMastersCalls, bool isEmbedded) ; |
5b781a67 | 18 | void UMACleanupToolbox() ; |
2b5f62a0 | 19 | long UMAGetSystemVersion() ; |
cfcc3671 UJ |
20 | bool UMAHasAppearance() ; |
21 | long UMAGetAppearanceVersion() ; | |
72055702 SC |
22 | bool UMAHasWindowManager() ; |
23 | long UMAGetWindowManagerAttr() ; | |
78c0e83b | 24 | bool UMAHasAquaLayout() ; |
2dbc444a | 25 | |
0e5a4d20 | 26 | bool UMASystemIsInitialized() ; |
2dbc444a | 27 | void UMASetSystemIsInitialized(bool val); |
cfcc3671 UJ |
28 | |
29 | // process manager | |
30 | ||
31 | long UMAGetProcessMode() ; | |
32 | bool UMAGetProcessModeDoesActivateOnFGSwitch() ; | |
33 | ||
2dbc444a RD |
34 | #if wxUSE_GUI |
35 | ||
cfcc3671 UJ |
36 | // menu manager |
37 | ||
e40298d5 JS |
38 | MenuRef UMANewMenu( SInt16 id , const wxString& title ) ; |
39 | void UMASetMenuTitle( MenuRef menu , const wxString& title ) ; | |
40 | UInt32 UMAMenuEvent( EventRecord *inEvent ) ; | |
41 | void UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex item , bool enable ) ; | |
f3fb0a07 | 42 | |
e40298d5 JS |
43 | void UMAAppendSubMenuItem( MenuRef menu , const wxString& title , SInt16 submenuid ) ; |
44 | void UMAInsertSubMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , SInt16 submenuid ) ; | |
45 | void UMAAppendMenuItem( MenuRef menu , const wxString& title , wxAcceleratorEntry *entry = NULL ) ; | |
46 | void UMAInsertMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , wxAcceleratorEntry *entry = NULL ) ; | |
47 | void UMASetMenuItemShortcut( MenuRef menu , MenuItemIndex item , wxAcceleratorEntry *entry ) ; | |
f3fb0a07 | 48 | |
e40298d5 | 49 | void UMASetMenuItemText( MenuRef menu, MenuItemIndex item, const wxString& title ) ; |
05adb9d2 | 50 | |
cfcc3671 UJ |
51 | // quickdraw |
52 | ||
e40298d5 JS |
53 | void UMAShowWatchCursor() ; |
54 | void UMAShowArrowCursor() ; | |
cfcc3671 | 55 | |
20cd7383 SC |
56 | #if !TARGET_CARBON |
57 | OSStatus UMAPrOpen() ; | |
58 | OSStatus UMAPrClose() ; | |
59 | #endif | |
05adb9d2 | 60 | |
cfcc3671 UJ |
61 | // window manager |
62 | ||
e40298d5 JS |
63 | GrafPtr UMAGetWindowPort( WindowRef inWindowRef ) ; |
64 | void UMADisposeWindow( WindowRef inWindowRef ) ; | |
c4e41ce3 | 65 | void UMASetWTitle( WindowRef inWindowRef , const wxString& title ) ; |
e40298d5 | 66 | void UMAGetWTitleC( WindowRef inWindowRef , char *title ) ; |
cfcc3671 | 67 | |
e40298d5 JS |
68 | void UMADrawGrowIcon( WindowRef inWindowRef ) ; |
69 | void UMAShowHide( WindowRef inWindowRef , Boolean show) ; | |
cfcc3671 UJ |
70 | |
71 | // appearance manager | |
72 | ||
e40298d5 | 73 | void UMADrawControl( ControlHandle inControl ) ; |
cfcc3671 | 74 | |
e40298d5 JS |
75 | void UMAEnableControl( ControlHandle inControl ) ; |
76 | void UMADisableControl( ControlHandle inControl ) ; | |
77 | void UMAActivateControl( ControlHandle inControl ) ; | |
78 | void UMADeactivateControl( ControlHandle inControl ) ; | |
79 | // ControlPartCode hiliteState) ; | |
80 | void UMAShowControl (ControlHandle theControl) ; | |
81 | void UMAHideControl (ControlHandle theControl); | |
82 | void UMAActivateControl (ControlHandle inControl); | |
83 | void UMADeactivateControl (ControlHandle inControl); | |
c4e41ce3 | 84 | void UMASetControlTitle( ControlHandle inControl , const wxString& title ) ; |
cfcc3671 | 85 | |
cfcc3671 UJ |
86 | void UMAMoveControl( ControlHandle inControl , short x , short y ) ; |
87 | void UMASizeControl( ControlHandle inControl , short x , short y ) ; | |
88 | // control hierarchy | |
89 | ||
cfcc3671 | 90 | // keyboard focus |
e40298d5 JS |
91 | OSErr UMASetKeyboardFocus (WindowPtr inWindow, |
92 | ControlHandle inControl, | |
93 | ControlFocusPart inPart) ; | |
cfcc3671 | 94 | |
cfcc3671 UJ |
95 | // events |
96 | ||
cfcc3671 UJ |
97 | void UMAUpdateControls( WindowPtr inWindow , RgnHandle inRgn ) ; |
98 | OSErr UMAGetRootControl( WindowPtr inWindow , ControlHandle *outControl ) ; | |
99 | ||
100 | // handling control data | |
e40298d5 JS |
101 | bool UMAIsWindowFloating( WindowRef inWindow ) ; |
102 | bool UMAIsWindowModal( WindowRef inWindow ) ; | |
67e3d9d3 | 103 | |
cfcc3671 UJ |
104 | void UMAHighlightAndActivateWindow( WindowRef inWindowRef , bool inActivate ) ; |
105 | ||
56a38bbe SC |
106 | OSStatus UMAGetHelpMenu( |
107 | MenuRef * outHelpMenu, | |
108 | MenuItemIndex * outFirstCustomItemIndex); /* can be NULL */ | |
109 | ||
5273bf2f SC |
110 | // Appearance Drawing |
111 | ||
112 | OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState ) ; | |
113 | ||
1c522100 SC |
114 | // Clipboard support |
115 | ||
116 | OSStatus UMAPutScrap( Size size , OSType type , void *data ) ; | |
117 | ||
5273bf2f SC |
118 | // accessor helpers |
119 | ||
05adb9d2 | 120 | #if !TARGET_CARBON |
5273bf2f | 121 | #define ClearCurrentScrap() ZeroScrap() ; |
35f6182b | 122 | #define GetApplicationScript() smSystemScript |
5273bf2f SC |
123 | #else |
124 | ||
125 | // calls not in carbon | |
126 | ||
72055702 | 127 | #endif |
2dbc444a RD |
128 | #define GetWindowUpdateRgn( inWindow , updateRgn ) GetWindowRegion( inWindow , kWindowUpdateRgn, updateRgn ) |
129 | ||
130 | #endif // wxUSE_GUI | |
cfcc3671 | 131 | |
03e11df5 | 132 | #endif |