implemented Carbon printing for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -82,6 +82,8 @@
|
|||||||
IMPLEMENT_DYNAMIC_CLASS(wxColourData, wxObject)
|
IMPLEMENT_DYNAMIC_CLASS(wxColourData, wxObject)
|
||||||
|
|
||||||
#ifdef __WXMAC__
|
#ifdef __WXMAC__
|
||||||
|
#include "wx/mac/uma.h"
|
||||||
|
|
||||||
#define mm2pt 2.83464566929
|
#define mm2pt 2.83464566929
|
||||||
#define pt2mm 0.352777777778
|
#define pt2mm 0.352777777778
|
||||||
#endif // Mac
|
#endif // Mac
|
||||||
@@ -179,6 +181,36 @@ wxPrintData::wxPrintData()
|
|||||||
#if TARGET_CARBON
|
#if TARGET_CARBON
|
||||||
m_macPageFormat = kPMNoPageFormat;
|
m_macPageFormat = kPMNoPageFormat;
|
||||||
m_macPrintSettings = kPMNoPrintSettings;
|
m_macPrintSettings = kPMNoPrintSettings;
|
||||||
|
|
||||||
|
#if PM_USE_SESSION_APIS
|
||||||
|
PMPrintSession macPrintSession = kPMNoReference;
|
||||||
|
OSStatus err;
|
||||||
|
|
||||||
|
err = ::UMAPrOpen(&macPrintSession) ;
|
||||||
|
if ( err == noErr )
|
||||||
|
{
|
||||||
|
err = PMCreatePageFormat(&m_macPageFormat);
|
||||||
|
|
||||||
|
// Note that PMPageFormat is not session-specific, but calling
|
||||||
|
// PMSessionDefaultPageFormat assigns values specific to the printer
|
||||||
|
// associated with the current printing session.
|
||||||
|
if ((err == noErr) && (m_macPageFormat != kPMNoPageFormat))
|
||||||
|
{
|
||||||
|
err = PMSessionDefaultPageFormat(macPrintSession, m_macPageFormat);
|
||||||
|
}
|
||||||
|
|
||||||
|
err = PMCreatePrintSettings(&m_macPrintSettings);
|
||||||
|
|
||||||
|
// Note that PMPrintSettings is not session-specific, but calling
|
||||||
|
// PMSessionDefaultPrintSettings assigns values specific to the printer
|
||||||
|
// associated with the current printing session.
|
||||||
|
if ((err == noErr) && (m_macPrintSettings != kPMNoPrintSettings))
|
||||||
|
{
|
||||||
|
err = PMSessionDefaultPrintSettings(macPrintSession, m_macPrintSettings);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
::UMAPrClose(&macPrintSession) ;
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
m_macPrintInfo = (THPrint) NewHandleClear( sizeof( TPrint ) );
|
m_macPrintInfo = (THPrint) NewHandleClear( sizeof( TPrint ) );
|
||||||
(**m_macPrintInfo).iPrVersion = 0; // something invalid
|
(**m_macPrintInfo).iPrVersion = 0; // something invalid
|
||||||
@@ -265,6 +297,7 @@ wxPrintData::~wxPrintData()
|
|||||||
#endif
|
#endif
|
||||||
m_macPrintSettings = kPMNoPrintSettings;
|
m_macPrintSettings = kPMNoPrintSettings;
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
wxASSERT( m_macPrintInfo );
|
wxASSERT( m_macPrintInfo );
|
||||||
// we should perhaps delete
|
// we should perhaps delete
|
||||||
|
Reference in New Issue
Block a user