]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/uma.h
blind attempt to fix wxMac compilation (__UNIX__ defined on OS X?)
[wxWidgets.git] / include / wx / mac / uma.h
index 6133502a6b64b85e66c17ced39acb7cb1e179f5c..0d4399a04fcaf8fda2dabe907169206aedd4e328 100644 (file)
 // Author:      Stefan Csomor
 // Modified by:
 // Created:     03/02/99
-// RCS-ID:      $Id: 
+// RCS-ID:      $Id:
 // Copyright:   (c) Stefan Csomor
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef H_UMA
 #define H_UMA
 
-// define this to be 1 if you have the 8.6 libs (weak linked)
+#include "wx/mac/private.h"
 
-#define UMA_USE_8_6 0 
-
-#if TARGET_CARBON
-#undef UMA_USE_8_6
-#define UMA_USE_8_6 1 
-#endif
-
-#if defined(__POWERPC__) || defined(__APPLE__)
-    #define UMA_USE_APPEARANCE 1
-    #define UMA_USE_WINDOWMGR 1
-    #if defined(__APPLE__)
-        #include <Carbon/Carbon.h>
-    #endif
-#else
-    #define UMA_USE_APPEARANCE 1
-    #define UMA_USE_WINDOWMGR 0
-#endif
-
-#if UMA_USE_APPEARANCE == 0 
-    #pragma error "wxMac needs appearance"
-#endif
-
-#if !UMA_USE_8_6 && UMA_USE_WINDOWMGR
-#undef UMA_USE_WINDOWMGR
-#define UMA_USE_WINDOWMGR 0
-#endif
-
-#if !TARGET_CARBON
-//  this is now defined in the latest headers
-//     typedef short MenuItemIndex  ;
-#endif
-
-void UMAInitToolbox( UInt16 inMoreMastersCalls) ;
+void UMAInitToolbox( UInt16 inMoreMastersCalls, bool isEmbedded) ;
 void UMACleanupToolbox() ;
+long UMAGetSystemVersion() ;
 bool UMAHasAppearance() ;
 long UMAGetAppearanceVersion() ;
+bool UMAHasWindowManager() ;
+long UMAGetWindowManagerAttr() ;
+bool UMAHasAquaLayout() ;
+
+bool UMASystemIsInitialized() ;
+void UMASetSystemIsInitialized(bool val);
 
 // process manager
 
 long UMAGetProcessMode() ;
 bool UMAGetProcessModeDoesActivateOnFGSwitch() ;
 
-// menu manager
+#if wxUSE_GUI
 
-void                   UMASetMenuTitle( MenuRef menu , StringPtr title ) ;
-UInt32                         UMAMenuEvent( EventRecord *inEvent ) ;
-void                   UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex item ) ;      
-void                   UMADisableMenuItem( MenuRef inMenu , MenuItemIndex item ) ;     
-void                   UMAAppendSubMenuItem( MenuRef menu , StringPtr label , SInt16 submenuid ) ;
-void                   UMAInsertSubMenuItem( MenuRef menu , StringPtr label , MenuItemIndex item , SInt16 submenuid  ) ;
-void                   UMAAppendMenuItem( MenuRef menu , StringPtr label , SInt16 key= 0, UInt8 modifiers = 0 ) ;
-void                   UMAInsertMenuItem( MenuRef menu , StringPtr label , MenuItemIndex item , SInt16 key = 0 , UInt8 modifiers = 0 ) ;
-void                   UMASetMenuItemText( MenuRef menu , MenuItemIndex item , StringPtr label ) ;
+// menu manager
 
-MenuRef                        UMANewMenu( SInt16 menuid , StringPtr label ) ;
-void                   UMADisposeMenu( MenuRef menu ) ;
+MenuRef         UMANewMenu( SInt16 id , const wxString& title ) ;
+void             UMASetMenuTitle( MenuRef menu , const wxString& title ) ;
+UInt32             UMAMenuEvent( EventRecord *inEvent ) ;
+void             UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex item , bool enable ) ;
 
-// handling the menubar
+void            UMAAppendSubMenuItem( MenuRef menu , const wxString& title , SInt16 submenuid ) ;
+void            UMAInsertSubMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , SInt16 submenuid  ) ;
+void            UMAAppendMenuItem( MenuRef menu , const wxString& title , wxAcceleratorEntry *entry = NULL  ) ;
+void            UMAInsertMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , wxAcceleratorEntry *entry = NULL ) ;
+void             UMASetMenuItemShortcut( MenuRef menu , MenuItemIndex item , wxAcceleratorEntry *entry ) ;
 
-void                   UMADeleteMenu( SInt16 menuId ) ;
-void                   UMAInsertMenu( MenuRef insertMenu , SInt16 afterId ) ;
-void                   UMADrawMenuBar() ;
+void            UMASetMenuItemText(  MenuRef menu,  MenuItemIndex item, const wxString& title ) ;
 
 // quickdraw
 
-void                   UMAShowWatchCursor() ;
-void                   UMAShowArrowCursor() ;
+void            UMAShowWatchCursor() ;
+void            UMAShowArrowCursor() ;
 
-#if TARGET_CARBON && PM_USE_SESSION_APIS
-OSStatus               UMAPrOpen(PMPrintSession *macPrintSession) ;
-OSStatus               UMAPrClose(PMPrintSession *macPrintSession) ;
-#else
-OSStatus               UMAPrOpen() ;
-OSStatus               UMAPrClose() ;
+#if !TARGET_CARBON
+OSStatus        UMAPrOpen() ;
+OSStatus        UMAPrClose() ;
 #endif
 
 // window manager
 
-GrafPtr                UMAGetWindowPort( WindowRef inWindowRef ) ;
-void                   UMADisposeWindow( WindowRef inWindowRef ) ;
-void                   UMASetWTitleC( WindowRef inWindowRef , const char *title ) ;
-void                   UMAGetWTitleC( WindowRef inWindowRef , char *title ) ;
+GrafPtr        UMAGetWindowPort( WindowRef inWindowRef ) ;
+void             UMADisposeWindow( WindowRef inWindowRef ) ;
+void             UMASetWTitle( WindowRef inWindowRef , const wxString& title ) ;
+void             UMAGetWTitleC( WindowRef inWindowRef , char *title ) ;
 
-void                   UMADrawGrowIcon( WindowRef inWindowRef ) ;
-void                   UMAShowWindow( WindowRef inWindowRef ) ;
-void                   UMAHideWindow( WindowRef inWindowRef ) ;
-void                   UMAShowHide( WindowRef inWindowRef , Boolean show) ;
-void                   UMASelectWindow( WindowRef inWindowRef ) ;
-void                   UMABringToFront( WindowRef inWindowRef ) ;
-void                   UMASendBehind( WindowRef inWindowRef , WindowRef behindWindow ) ;
-void                   UMACloseWindow(WindowRef inWindowRef) ;
+void             UMADrawGrowIcon( WindowRef inWindowRef ) ;
+void            UMAShowHide( WindowRef inWindowRef , Boolean show) ;
 
 // appearance manager
 
-void                   UMADrawControl( ControlHandle inControl ) ;
-
-void                   UMAEnableControl( ControlHandle inControl ) ;
-void                   UMADisableControl( ControlHandle inControl ) ;
-void                   UMAActivateControl( ControlHandle inControl ) ;
-void                   UMADeactivateControl( ControlHandle inControl ) ;
-void                   UMAApplyThemeBackground                 (ThemeBackgroundKind    inKind,
-                                                                const Rect *                   bounds,
-                                                                ThemeDrawState                 inState,
-                                                                SInt16                                 inDepth,
-                                                                Boolean                                inColorDev);
-void                   UMASetThemeWindowBackground             (WindowRef                              inWindow,
-                                                                ThemeBrush                     inBrush,
-                                                                Boolean                                inUpdate)       ;
-ControlHandle UMANewControl(WindowPtr                          owningWindow,
-                                                                const Rect *                   boundsRect,
-                                                                ConstStr255Param               controlTitle,
-                                                                Boolean                                initiallyVisible,
-                                                                SInt16                                 initialValue,
-                                                                SInt16                                 minimumValue,
-                                                                SInt16                                 maximumValue,
-                                                                SInt16                                 procID,
-                                                                SInt32                                 controlReference)       ;
-void UMADisposeControl (ControlHandle                  theControl)     ;
-void UMAHiliteControl  (ControlHandle                  theControl,
-                                                                ControlPartCode                hiliteState)    ;
-void UMAShowControl                                            (ControlHandle                  theControl)     ;
-void UMAHideControl                                            (ControlHandle                  theControl);
-void UMASetControlVisibility                   (ControlHandle                  inControl,
-                                                                Boolean                                inIsVisible,
-                                                                Boolean                                inDoDraw);
-
-bool UMAIsControlActive                                        (ControlHandle                  inControl);
-bool UMAIsControlVisible                               (ControlHandle                  inControl);
-void UMAActivateControl                                        (ControlHandle                  inControl);
-void UMADeactivateControl                              (ControlHandle                  inControl);
-
-OSErr UMAGetBestControlRect                            (ControlHandle                  inControl,
-                                                                Rect *                                 outRect,
-                                                                SInt16 *                               outBaseLineOffset);
-OSErr UMASetControlFontStyle                           (ControlHandle                  inControl,
-                                                                const ControlFontStyleRec * inStyle)   ;
+void             UMADrawControl( ControlHandle inControl ) ;
 
+void             UMAEnableControl( ControlHandle inControl ) ;
+void            UMADisableControl( ControlHandle inControl ) ;
+void             UMAActivateControl( ControlHandle inControl ) ;
+void            UMADeactivateControl( ControlHandle inControl ) ;
+//                                 ControlPartCode         hiliteState)    ;
+void UMAShowControl                        (ControlHandle             theControl)    ;
+void UMAHideControl                        (ControlHandle             theControl);
+void UMAActivateControl                    (ControlHandle             inControl);
+void UMADeactivateControl                (ControlHandle             inControl);
+void UMASetControlTitle( ControlHandle inControl , const wxString& title ) ;
 
 void UMAMoveControl( ControlHandle inControl , short x , short y ) ;
 void UMASizeControl( ControlHandle inControl , short x , short y ) ;
 // control hierarchy
 
-OSErr UMACreateRootControl                             (WindowPtr                              inWindow,
-                                                                ControlHandle *                outControl) ;
-
-OSErr UMAEmbedControl                                  (ControlHandle                  inControl,
-                                                                ControlHandle                  inContainer);
-
 // keyboard focus
-OSErr UMASetKeyboardFocus                              (WindowPtr                              inWindow,
-                                                                ControlHandle                  inControl,
-                                                                ControlFocusPart               inPart) ;
-
+OSErr UMASetKeyboardFocus                (WindowPtr                 inWindow,
+                                 ControlHandle             inControl,
+                                 ControlFocusPart         inPart)    ;
 
 // events
 
-ControlPartCode UMAHandleControlClick                          (ControlHandle                  inControl,
-                                                                Point                                  inWhere,
-                                                                SInt16                                 inModifiers,
-                                                                ControlActionUPP               inAction) ;
-SInt16 UMAHandleControlKey                             (ControlHandle                  inControl,
-                                                                SInt16                                 inKeyCode,
-                                                                SInt16                                 inCharCode,
-                                                                SInt16                                 inModifiers);
-                                                                
-void UMAIdleControls                                   (WindowPtr                              inWindow)       ;
-
 void UMAUpdateControls( WindowPtr inWindow , RgnHandle inRgn ) ;
 OSErr UMAGetRootControl( WindowPtr inWindow , ControlHandle *outControl ) ;
 
 // handling control data
-
-OSErr UMASetControlData                                        (ControlHandle                  inControl,
-                                                                ControlPartCode                inPart,
-                                                                ResType                                inTagName,
-                                                                Size                                   inSize,
-                                                                Ptr                                    inData)         ;
-
-OSErr UMAGetControlData                                        (ControlHandle                  inControl,
-                                                                ControlPartCode                inPart,
-                                                                ResType                                inTagName,
-                                                                Size                                   inBufferSize,
-                                                                Ptr                                    outBuffer,
-                                                                Size *                                 outActualSize) ;
-OSErr UMAGetControlDataSize                            (ControlHandle                  inControl,
-                                                                ControlPartCode                inPart,
-                                                                ResType                                inTagName,
-                                                                Size *                                 outMaxSize);
-
-
-// system 8.0
-
-short          UMAFindWindow( Point inPoint , WindowRef *outWindow ) ;
-OSStatus       UMAGetWindowFeatures( WindowRef inWindowRef , UInt32 *outFeatures ) ;
-OSStatus       UMAGetWindowRegion( WindowRef inWindowRef , WindowRegionCode inRegionCode , RgnHandle ioWinRgn ) ;
-OSStatus       UMACollapseWindow( WindowRef inWindowRef , Boolean inCollapseIt ) ;
-OSStatus       UMACollapseAllWindows( Boolean inCollapseEm ) ;
-Boolean        UMAIsWindowCollapsed( WindowRef inWindowRef ) ;
-Boolean UMAIsWindowCollapsable( WindowRef inWindowRef ) ;
-
-// system 8.5
-
-OSStatus       UMACreateNewWindow( WindowClass windowClass , WindowAttributes attributes , const Rect *bounds,  WindowRef *outWindow ) ;
-OSStatus       UMAGetWindowClass( WindowRef inWindowRef , WindowClass *outWindowClass ) ;
-OSStatus       UMAGetWindowAttributes( WindowRef inWindowRef , WindowAttributes *outAttributes ) ;
-
-void                   UMAShowFloatingWindows() ;
-void                   UMAHideFloatingWindows() ;
-Boolean        UMAAreFloatingWindowsVisible() ;
-WindowRef UMAFrontWindow() ;
-WindowRef UMAFrontNonFloatingWindow() ;
-
-// floaters support
-
-bool                   UMAIsWindowFloating( WindowRef inWindow ) ;
-bool                   UMAIsWindowModal( WindowRef inWindow ) ;
-WindowRef UMAGetActiveWindow() ;
-WindowRef UMAGetActiveNonFloatingWindow() ;
+bool            UMAIsWindowFloating( WindowRef inWindow ) ;
+bool            UMAIsWindowModal( WindowRef inWindow ) ;
 
 void UMAHighlightAndActivateWindow( WindowRef inWindowRef , bool inActivate ) ;
 
-#if !TARGET_CARBON
-#define GetPortTextFont( p) ((p)->txFont )
-#define GetPortTextSize( p) ((p)->txSize )
-#define GetPortTextFace( p) ((p)->txFace )
-#define GetPortTextMode( p) ((p)->txMode )
-#define GetRegionBounds( r , b) ((*b) = (**r).rgnBBox)
-#define GetPortBounds( p , b) ((*b) = p->portRect )
-#define GetWindowPortBounds( p , b) ((*b) = p->portRect )
-#define        GetPortVisibleRegion( p, r ) CopyRgn( p->visRgn , r )
-#define GetQDGlobalsWhite( a ) (&((*a) = qd.white))
-#define GetQDGlobalsBlack( a ) (&((*a) = qd.black))
-#define GetQDGlobalsScreenBits( a ) (*a) = qd.screenBits
-#define GetQDGlobalsArrow( a ) (&((*a) = qd.arrow))
-#define GetControlBounds( c , b ) &((*b) = (**c).contrlRect )
-#define GetPortBitMapForCopyBits( p ) ((BitMap*) &(((CGrafPtr)p)->portPixMap ))
-#endif
+OSStatus UMAGetHelpMenu(
+  MenuRef *        outHelpMenu,
+  MenuItemIndex *  outFirstCustomItemIndex);      /* can be NULL */
 
 // Appearance Drawing
 
 OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState ) ;
 
+// Clipboard support
+
+OSStatus UMAPutScrap( Size size , OSType type , void *data ) ;
+
+// accessor helpers
+
+#if !TARGET_CARBON
+#define ClearCurrentScrap() ZeroScrap() ;
+#define GetApplicationScript() smSystemScript
+#else
+
+// calls not in carbon
+
+#endif
+#define GetWindowUpdateRgn( inWindow , updateRgn ) GetWindowRegion( inWindow , kWindowUpdateRgn, updateRgn )
+
+#endif // wxUSE_GUI
+
 #endif