#include <wx/mac/uma.h>
#include <wx/mac/aga.h>
+
+#include "Navigation.h"
+
// init
static bool sUMAHasAppearance = false ;
bool UMAHasWindowManager() { return sUMAHasWindowManager ; }
long UMAGetWindowManagerAttr() { return sUMAWindowManagerAttr ; }
-
+void UMACleanupToolbox()
+{
+#if UMA_USE_APPEARANCE
+ if ( sUMAHasAppearance )
+ {
+ UnregisterAppearanceClient() ;
+ }
+#endif
+ if ( NavServicesAvailable() )
+ {
+ NavUnload() ;
+ }
+}
void UMAInitToolbox( UInt16 inMoreMastersCalls )
{
#if !TARGET_CARBON
::InitGraf(&qd.thePort);
::InitFonts();
- ::InitWindows();
::InitMenus();
::TEInit();
::InitDialogs(0L);
}
#endif // UMA_USE_WINDOWMGR
#endif
+
+ if ( sUMAHasWindowManager )
+ InitFloatingWindows() ;
+ else
+ InitWindows();
+
+ if ( NavServicesAvailable() )
+ {
+ NavLoad() ;
+ }
}
// process manager
int gPrOpenCounter = 0 ;
-void UMAPrOpen()
+OSStatus UMAPrOpen()
{
#if !TARGET_CARBON
OSErr err = noErr ;
err = PrError() ;
wxASSERT( err == noErr ) ;
}
+ return err ;
#else
- #pragma warning "TODO Printing for Carbon"
+ OSStatus err = noErr ;
+ ++gPrOpenCounter ;
+ if ( gPrOpenCounter == 1 )
+ {
+ err = PMBegin() ;
+ wxASSERT( err == noErr ) ;
+ }
+ return err ;
#endif
}
-void UMAPrClose()
+OSStatus UMAPrClose()
{
#if !TARGET_CARBON
OSErr err = noErr ;
wxASSERT( err == noErr ) ;
}
--gPrOpenCounter ;
+ return err ;
#else
- #pragma warning "TODO Printing for Carbon"
+ OSStatus err = noErr ;
+ wxASSERT( gPrOpenCounter >= 1 ) ;
+ if ( gPrOpenCounter == 1 )
+ {
+ err = PMEnd() ;
+ }
+ --gPrOpenCounter ;
+ return err ;
#endif
}