m_maxY = wxCoord(rPage.bottom - rPage.top);
PMResolution res;
-#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
- PMPrinter printer;
- PMSessionGetCurrentPrinter(native->m_macPrintSession, &printer);
- PMPrinterGetOutputResolution( printer, native->m_macPrintSettings, &res) ;
-#else
- m_err = PMGetResolution((PMPageFormat) (native->m_macPageFormat), &res);
+
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
+ if ( PMPrinterGetOutputResolution != NULL )
+ {
+ PMPrinter printer;
+ m_err = PMSessionGetCurrentPrinter(native->m_macPrintSession, &printer);
+ if ( m_err == noErr )
+ {
+ m_err = PMPrinterGetOutputResolution( printer, native->m_macPrintSettings, &res) ;
+ if ( m_err == -9589 /* kPMKeyNotFound */ )
+ {
+ m_err = noErr ;
+ res.hRes = res.vRes = 300;
+ }
+ }
+ }
+ else
#endif
+ {
+#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5
+ m_err = PMGetResolution((PMPageFormat) (native->m_macPageFormat), &res);
+#endif
+ }
+
m_ppi = wxSize(int(res.hRes), int(res.vRes));
}
PMPrinter printer;
m_err = PMSessionGetCurrentPrinter(native->m_macPrintSession, &printer);
if ( m_err == noErr )
+ {
m_err = PMPrinterGetOutputResolution( printer, native->m_macPrintSettings, &res) ;
+ if ( m_err == -9589 /* kPMKeyNotFound */ )
+ {
+ m_err = noErr ;
+ res.hRes = res.vRes = 300;
+ }
+ }
}
else
#endif
bool wxPrinterDCImpl::StartDoc( const wxString& message )
{
- wxASSERT_MSG( Ok() , wxT("Called wxPrinterDC::StartDoc from an invalid object") ) ;
+ wxASSERT_MSG( IsOk() , wxT("Called wxPrinterDC::StartDoc from an invalid object") ) ;
if ( !m_ok )
return false ;