- OSStatus err = noErr ;
- wxString message ;
-
-#if !TARGET_CARBON
- m_macPrintSessionPort = ::PrOpenDoc( (THPrint) m_printData.m_macPrintSettings , NULL , NULL ) ;
- err = PrError() ;
- if ( err )
- {
- message.Printf( "Print Error %d", err ) ;
- wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
- dialog.ShowModal();
- UMAPrClose(NULL) ;
- m_ok = FALSE;
- return false ;
- }
- // sets current port
- m_macPort = (GrafPtr ) m_macPrintSessionPort ;
-#else
- #if PM_USE_SESSION_APIS
- err = PMSessionBeginDocument((PMPrintSession)m_macPrintSessionPort,
- (PMPrintSettings)m_printData.m_macPrintSettings,
- (PMPageFormat)m_printData.m_macPageFormat);
- if ( err != noErr )
- #else
- m_macPrintSessionPort = kPMNoReference ;
- err = PMBeginDocument(
- m_printData.m_macPrintSettings,
- m_printData.m_macPageFormat,
- &m_macPrintSessionPort);
- if ( err != noErr || m_macPrintSessionPort == kPMNoReference )
- #endif
- {
- message.Printf( "Print Error %d", err ) ;
- wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
- dialog.ShowModal();
- #if TARGET_CARBON && PM_USE_SESSION_APIS
- PMRelease(&m_macPrintSessionPort) ;
- #else
- UMAPrClose(NULL) ;
- #endif
- m_ok = FALSE;
- return m_ok;
- }
- // sets current port
- ::GetPort( (GrafPtr *)&m_macPort ) ;
-#endif
- m_ok = TRUE ;
- m_minY = m_minX = 0 ;
-#if TARGET_CARBON
- PMRect rPaper;
-
- err = PMGetAdjustedPaperRect((PMPageFormat)m_printData.m_macPageFormat, &rPaper);
- if ( err != noErr )
- {
- message.Printf( "Print Error %d", err ) ;
- wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
- dialog.ShowModal();
- #if TARGET_CARBON && PM_USE_SESSION_APIS
- PMRelease(&m_macPrintSessionPort) ;
- #else
- UMAPrClose(NULL) ;
- #endif
- m_ok = FALSE;
- return m_ok;
- }
- m_maxX = rPaper.right - rPaper.left ;
- m_maxY = rPaper.bottom - rPaper.top ;
-#else
- m_maxX = (**(THPrint)m_printData.m_macPrintSettings).rPaper.right - (**(THPrint)m_printData.m_macPrintSettings).rPaper.left ;
- m_maxY = (**(THPrint)m_printData.m_macPrintSettings).rPaper.bottom - (**(THPrint)m_printData.m_macPrintSettings).rPaper.top ;
-#endif
- return m_ok ;