// this is an ABC: use one of the derived classes to create a DC associated
// with a window, screen, printer and so on
-class WXDLLEXPORT wxMSWDCImpl: public wxDCImpl
+class WXDLLIMPEXP_CORE wxMSWDCImpl: public wxDCImpl
{
public:
wxMSWDCImpl(wxDC *owner, WXHDC hDC);
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
void RealizeScaleAndOrigin();
+public:
virtual void DoGetTextExtent(const wxString& string,
wxCoord *x, wxCoord *y,
wxCoord *descent = NULL,
double radius);
virtual void DoDrawEllipse(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
-#if wxUSE_SPLINES
+#if wxUSE_SPLINES && !defined(__WXWINCE__)
virtual void DoDrawSpline(const wxPointList *points);
#endif
int rop = wxCOPY, bool useMask = false,
wxCoord xsrcMask = wxDefaultCoord, wxCoord ysrcMask = wxDefaultCoord);
- // 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 DoGetClippingBox(wxCoord *x, wxCoord *y,
wxCoord *w, wxCoord *h) const;
virtual void DoDrawPolyPolygon(int n, int count[], wxPoint points[],
wxCoord xoffset, wxCoord yoffset,
int fillStyle = wxODDEVEN_RULE);
- virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
- { return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect); }
+ virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
+ {
+ return subrect == NULL ? GetSelectedBitmap()
+ : GetSelectedBitmap().GetSubBitmap(*subrect);
+ }
#if wxUSE_PALETTE
void InitializePalette();
#endif // wxUSE_PALETTE
+protected:
// common part of DoDrawText() and DoDrawRotatedText()
void DrawAnyText(const wxString& text, wxCoord x, wxCoord y);
- // common part of DoSetClippingRegion() and DoSetClippingRegionAsRegion()
+ // common part of DoSetClippingRegion() and DoSetDeviceClippingRegion()
void SetClippingHrgn(WXHRGN hrgn);
// implementation of DoGetSize() for wxScreen/PrinterDC: this simply
// only/mainly)
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxDCTempImpl: public wxMSWDCImpl
+class WXDLLIMPEXP_CORE wxDCTempImpl : public wxMSWDCImpl
{
public:
// construct a temporary DC with the specified HDC and size (it should be
SetHDC((WXHDC)NULL);
}
-protected:
virtual void DoGetSize(int *w, int *h) const
{
wxASSERT_MSG( m_size.IsFullySpecified(),
DECLARE_NO_COPY_CLASS(wxDCTempImpl)
};
-class WXDLLEXPORT wxDCTemp: public wxDC
+class WXDLLIMPEXP_CORE wxDCTemp : public wxDC
{
public:
- wxDCTemp( WXHDC hdc, const wxSize& size = wxDefaultSize )
+ wxDCTemp(WXHDC hdc, const wxSize& size = wxDefaultSize)
+ : wxDC(new wxDCTempImpl(this, hdc, size))
{
- m_pimpl = new wxDCTempImpl( this, hdc, size );
}
-
};
-
-
#endif // _WX_MSW_DC_H_