X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dd761d262a3b0362a9d6784ea4fcc12a36207d36..1a78714d95d0df8a8ad5adfb483a5a45ad92f1b9:/include/wx/mgl/dc.h diff --git a/include/wx/mgl/dc.h b/include/wx/mgl/dc.h index eafae45054..02535965b7 100644 --- a/include/wx/mgl/dc.h +++ b/include/wx/mgl/dc.h @@ -18,7 +18,7 @@ // classes //----------------------------------------------------------------------------- -class WXDLLEXPORT wxDC; +class WXDLLIMPEXP_FWD_CORE wxDC; //----------------------------------------------------------------------------- // constants @@ -45,7 +45,7 @@ class MGLDevCtx; class MGLRegion; struct font_t; -class WXDLLEXPORT wxDC : public wxDCBase +class WXDLLIMPEXP_CORE wxDC : public wxDCBase { DECLARE_DYNAMIC_CLASS(wxDC) @@ -79,58 +79,28 @@ public: wxCoord *x, wxCoord *y, wxCoord *descent = NULL, wxCoord *externalLeading = NULL, - wxFont *theFont = NULL) const; + const wxFont *theFont = NULL) const; virtual bool CanDrawBitmap() const; virtual bool CanGetTextExtent() const; virtual int GetDepth() const; virtual wxSize GetPPI() const; - virtual void SetMapMode(int mode); - virtual void SetUserScale(double x, double y); - virtual void SetLogicalScale(double x, double y); - virtual void SetLogicalOrigin(wxCoord x, wxCoord y); - virtual void SetDeviceOrigin(wxCoord x, wxCoord y); - virtual void SetAxisOrientation(bool xLeftRight, bool yBottomUp); virtual void SetLogicalFunction(int function); // implementation from now on // -------------------------- virtual void ComputeScaleAndOrigin(); - - wxCoord XDEV2LOG(wxCoord x) const - { - return wxRound((double)(x - m_deviceOriginX) / m_scaleX) * m_signX + m_logicalOriginX; - } - wxCoord XDEV2LOGREL(wxCoord x) const - { - return wxRound((double)(x) / m_scaleX); - } - wxCoord YDEV2LOG(wxCoord y) const - { - return wxRound((double)(y - m_deviceOriginY) / m_scaleY) * m_signY + m_logicalOriginY; - } - wxCoord YDEV2LOGREL(wxCoord y) const - { - return wxRound((double)(y) / m_scaleY); - } - wxCoord XLOG2DEV(wxCoord x) const - { - return wxRound((double)(x - m_logicalOriginX) * m_scaleX) * m_signX + m_deviceOriginX; - } - wxCoord XLOG2DEVREL(wxCoord x) const - { - return wxRound((double)(x) * m_scaleX); - } - wxCoord YLOG2DEV(wxCoord y) const - { - return wxRound((double)(y - m_logicalOriginY) * m_scaleY) * m_signY + m_deviceOriginY; - } - wxCoord YLOG2DEVREL(wxCoord y) const - { - return wxRound((double)(y) * m_scaleY); - } + + wxCoord XDEV2LOG(wxCoord x) const { return DeviceToLogicalX(x); } + wxCoord XDEV2LOGREL(wxCoord x) const { return DeviceToLogicalXRel(x); } + wxCoord YDEV2LOG(wxCoord y) const { return DeviceToLogicalY(y); } + wxCoord YDEV2LOGREL(wxCoord y) const { return DeviceToLogicalYRel(y); } + wxCoord XLOG2DEV(wxCoord x) const { return LogicalToDeviceX(x); } + wxCoord XLOG2DEVREL(wxCoord x) const { return LogicalToDeviceXRel(x); } + wxCoord YLOG2DEV(wxCoord y) const { return LogicalToDeviceY(y); } + wxCoord YLOG2DEVREL(wxCoord y) const { return LogicalToDeviceYRel(y); } MGLDevCtx *GetMGLDC() const { return m_MGLDC; } void SetMGLDC(MGLDevCtx *mgldc, bool OwnsMGLDC = false); @@ -170,11 +140,9 @@ protected: wxDC *source, wxCoord xsrc, wxCoord ysrc, 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 - virtual void DoSetClippingRegionAsRegion(const wxRegion& region); virtual void DoSetClippingRegion(wxCoord x, wxCoord y, wxCoord width, wxCoord height); + virtual void DoSetDeviceClippingRegion(const wxRegion& region); virtual void DoGetSize(int *width, int *height) const; virtual void DoGetSizeMM(int* width, int* height) const;