// wxDC
//-----------------------------------------------------------------------------
+class WXDLLEXPORT wxMacPortSetter
+{
+public :
+ wxMacPortSetter( const wxDC* dc ) ;
+ ~wxMacPortSetter() ;
+private :
+ AGAPortHelper m_ph ;
+} ;
+
class WXDLLEXPORT wxDC: public wxDCBase
{
DECLARE_DYNAMIC_CLASS(wxDC)
virtual void Clear();
- virtual bool StartDoc( const wxString& WXUNUSED(message) ) { return TRUE; };
+ virtual bool StartDoc( const wxString& WXUNUSED(message) ) { return TRUE; }
virtual void EndDoc(void) {};
virtual void StartPage(void) {};
virtual bool DoBlit(wxCoord xdest, wxCoord ydest, wxCoord width, wxCoord height,
wxDC *source, wxCoord xsrc, wxCoord ysrc,
- int rop = wxCOPY, bool useMask = FALSE);
+ int rop = wxCOPY, bool useMask = FALSE, wxCoord xsrcMask = -1, wxCoord ysrcMask = -1);
// this is gnarly - we can't even call this function DoSetClippingRegion()
// because of virtual function hiding
wxCoord xoffset, wxCoord yoffset,
int fillStyle = wxODDEVEN_RULE);
-
-
-//
-
- public:
-//begin wxmac
+ protected:
+ //begin wxmac
+ // Variables used for scaling
double m_mm_to_pix_x,m_mm_to_pix_y;
- bool m_needComputeScaleX,m_needComputeScaleY; // not yet used
- long m_internalDeviceOriginX,m_internalDeviceOriginY; // If un-scrolled is non-zero or
- // d.o. changes with scrolling.
- // Set using SetInternalDeviceOrigin().
+ // not yet used
+ bool m_needComputeScaleX,m_needComputeScaleY;
+ // If un-scrolled is non-zero or d.o. changes with scrolling.
+ // Set using SetInternalDeviceOrigin().
+ long m_internalDeviceOriginX,m_internalDeviceOriginY;
+ // To be set by external classes such as wxScrolledWindow
+ // using SetDeviceOrigin()
+ long m_externalDeviceOriginX,m_externalDeviceOriginY;
+
+ // Begin implementation for Mac
+ public:
- long m_externalDeviceOriginX,m_externalDeviceOriginY; // To be set by external classes
- // such as wxScrolledWindow
- // using SetDeviceOrigin()
GrafPtr m_macPort ;
GWorldPtr m_macMask ;
mutable bool m_macPenInstalled ;
mutable bool m_macBrushInstalled ;
- mutable long m_macPortId ;
- GrafPtr m_macOrigPort ;
Rect m_macClipRect ;
Point m_macLocalOrigin ;
- mutable AGAPortHelper m_macPortHelper ;
- void MacSetupPort() const ;
- void MacVerifySetup() const { if ( m_macPortId != m_macCurrentPortId ) MacSetupPort() ; }
- static void MacInvalidateSetup() { m_macCurrentPortId++ ; }
- static long m_macCurrentPortId ;
+ void MacSetupPort( AGAPortHelper* ph ) const ;
};
#endif