]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/uma.h
new VC++ workspace file for wxBase
[wxWidgets.git] / include / wx / mac / uma.h
index fd9adb9bcb85e2a3854e0362e07153f8d1635a98..ed8cc1997fc27acbcc0ca1f62f5029e0ce1bd51f 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     03/02/99
 // RCS-ID:      $Id: 
 // Copyright:   (c) Stefan Csomor
-// Licence:    LGPL licence
+// Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef H_UMA
 
 #define UMA_USE_8_6 0 
 
-// define this to be 1 if you have the carbon libs (weak linked or PreCarbon.lib)
+#if TARGET_CARBON
+#undef UMA_USE_8_6
+#define UMA_USE_8_6 1 
+#endif
 
-#define UMA_USE_CARBON 0
+#if defined(__POWERPC__)
+    #define UMA_USE_APPEARANCE 1
+    #define UMA_USE_WINDOWMGR 1
+    #if defined(__DARWIN__)
+        #include <Carbon/Carbon.h>
+    #endif
+#else
+    #define UMA_USE_APPEARANCE 1
+    #define UMA_USE_WINDOWMGR 0
+#endif
 
-#define UMA_USE_APPEARANCE 1
-#define UMA_USE_WINDOWMGR 1
+#if UMA_USE_APPEARANCE == 0 
+    #pragma error "wxMac needs appearance"
+#endif
 
 #if !UMA_USE_8_6 && UMA_USE_WINDOWMGR
 #undef UMA_USE_WINDOWMGR
 #endif
 
 #if !TARGET_CARBON
-       typedef short MenuItemIndex  ;
+//  this is now defined in the latest headers
+//     typedef short MenuItemIndex  ;
 #endif
 
 void UMAInitToolbox( UInt16 inMoreMastersCalls) ;
+void UMACleanupToolbox() ;
 bool UMAHasAppearance() ;
 long UMAGetAppearanceVersion() ;
 
@@ -43,15 +58,38 @@ bool UMAGetProcessModeDoesActivateOnFGSwitch() ;
 
 // menu manager
 
-void                   UMASetMenuTitle( MenuRef menu , ConstStr255Param title ) ;
-UInt32                 UMAMenuEvent( EventRecord *inEvent ) ;
+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 ) ;
+
+MenuRef                        UMANewMenu( SInt16 menuid , StringPtr label ) ;
+void                   UMADisposeMenu( MenuRef menu ) ;
+
+// handling the menubar
+
+void                   UMADeleteMenu( SInt16 menuId ) ;
+void                   UMAInsertMenu( MenuRef insertMenu , SInt16 afterId ) ;
+void                   UMADrawMenuBar() ;
+
 // quickdraw
 
 void                   UMAShowWatchCursor() ;
 void                   UMAShowArrowCursor() ;
 
+#if TARGET_CARBON && PM_USE_SESSION_APIS
+OSStatus               UMAPrOpen(PMPrintSession *macPrintSession) ;
+OSStatus               UMAPrClose(PMPrintSession *macPrintSession) ;
+#else
+OSStatus               UMAPrOpen() ;
+OSStatus               UMAPrClose() ;
+#endif
+
 // window manager
 
 GrafPtr                UMAGetWindowPort( WindowRef inWindowRef ) ;
@@ -72,8 +110,15 @@ void                        UMACloseWindow(WindowRef inWindowRef) ;
 
 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)       ;
@@ -190,5 +235,25 @@ WindowRef UMAGetActiveNonFloatingWindow() ;
 
 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
 
-#endif
\ No newline at end of file
+// Appearance Drawing
+
+OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState ) ;
+
+#endif