X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0eaa1d68c29cd273971be9d60008045e470c2d46..544421165fa7f656d23b69801443b7aa69f71db8:/src/mac/dcprint.cpp?ds=sidebyside diff --git a/src/mac/dcprint.cpp b/src/mac/dcprint.cpp index 1467c4970f..904c5eedca 100644 --- a/src/mac/dcprint.cpp +++ b/src/mac/dcprint.cpp @@ -41,13 +41,21 @@ wxPrinterDC::wxPrinterDC(const wxPrintData& printdata) m_printData = printdata ; m_printData.ConvertToNative() ; - + +#if PM_USE_SESSION_APIS + err = UMAPrOpen(&m_macPrintPort) ; +#else err = UMAPrOpen() ; +#endif if ( err ) { message.Printf( "Print Error %d", err ) ; wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ; +#if PM_USE_SESSION_APIS + UMAPrClose(&m_macPrintPort) ; +#else UMAPrClose() ; +#endif } #if !TARGET_CARBON @@ -76,15 +84,26 @@ wxPrinterDC::wxPrinterDC(const wxPrintData& printdata) m_macPort = (GrafPtr ) m_macPrintPort ; #else m_macPrintPort = kPMNoReference ; + #if PM_USE_SESSION_APIS + err = PMSessionBeginDocument( + m_macPrintPort, + m_printData.m_macPrintSettings, + m_printData.m_macPageFormat); + #else err = PMBeginDocument( m_printData.m_macPrintSettings, m_printData.m_macPageFormat, &m_macPrintPort); + #endif if ( err != noErr || m_macPrintPort == kPMNoReference ) { message.Printf( "Print Error %d", err ) ; wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ; + #if PM_USE_SESSION_APIS + UMAPrClose(&m_macPrintPort) ; + #else UMAPrClose() ; + #endif } // sets current port ::GetPort( &m_macPort ) ; @@ -129,14 +148,26 @@ wxPrinterDC::~wxPrinterDC(void) #else if ( m_ok ) { - err = PMEndDocument(m_macPrintPort); + #if PM_USE_SESSION_APIS + err = PMSessionEndDocument(m_macPrintPort); + #else + err = PMEndDocument(m_macPrintPort); + #endif if ( !err ) { message.Printf( "Print Error %d", err ) ; wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ; + #if PM_USE_SESSION_APIS + UMAPrClose(&m_macPrintPort) ; + #else UMAPrClose() ; + #endif } - UMAPrClose() ; + #if PM_USE_SESSION_APIS + UMAPrClose(&m_macPrintPort) ; + #else + UMAPrClose() ; + #endif } #endif } @@ -194,14 +225,26 @@ void wxPrinterDC::StartPage(void) m_ok = FALSE ; } #else - err = PMBeginPage(m_macPrintPort, nil); + #if PM_USE_SESSION_APIS + err = PMSessionBeginPage(m_macPrintPort, + m_printData.m_macPageFormat, + nil); + #else + err = PMBeginPage(m_macPrintPort, nil); + #endif if ( err ) { message.Printf( "Print Error %d", err ) ; wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ; + #if PM_USE_SESSION_APIS + PMSessionEndPage(m_macPrintPort); + PMSessionEndDocument(m_macPrintPort); + UMAPrClose(&m_macPrintPort) ; + #else PMEndPage(m_macPrintPort); PMEndDocument(m_macPrintPort); UMAPrClose() ; + #endif ::SetPort( macPrintFormerPort ) ; m_ok = FALSE ; } @@ -229,13 +272,22 @@ void wxPrinterDC::EndPage(void) m_ok = FALSE ; } #else + #if PM_USE_SESSION_APIS + err = PMSessionEndPage(m_macPrintPort); + #else err = PMEndPage(m_macPrintPort); + #endif if ( err ) { message.Printf( "Print Error %d", err ) ; wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ; + #if PM_USE_SESSION_APIS + PMSessionEndDocument(m_macPrintPort); + UMAPrClose(&m_macPrintPort) ; + #else PMEndDocument(m_macPrintPort); UMAPrClose() ; + #endif ::SetPort( macPrintFormerPort ) ; m_ok = FALSE ; }