1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/dcmemory.h
3 // Purpose: wxMemoryDC class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_DCMEMORY_H_
13 #define _WX_DCMEMORY_H_
15 #include "wx/dcmemory.h"
16 #include "wx/msw/dc.h"
18 class WXDLLIMPEXP_CORE wxMemoryDCImpl
: public wxMSWDCImpl
21 wxMemoryDCImpl( wxMemoryDC
*owner
);
22 wxMemoryDCImpl( wxMemoryDC
*owner
, wxBitmap
& bitmap
);
23 wxMemoryDCImpl( wxMemoryDC
*owner
, wxDC
*dc
); // Create compatible DC
25 // override some base class virtuals
26 virtual void DoDrawRectangle(wxCoord x
, wxCoord y
, wxCoord width
, wxCoord height
);
27 virtual void DoGetSize(int* width
, int* height
) const;
28 virtual void DoSelect(const wxBitmap
& bitmap
);
30 virtual wxBitmap
DoGetAsBitmap(const wxRect
* subrect
) const
31 { return subrect
== NULL
? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmapOfHDC(*subrect
, GetHDC() );}
34 // create DC compatible with the given one or screen if dc == NULL
35 bool CreateCompatible(wxDC
*dc
);
37 // initialize the newly created DC
40 DECLARE_CLASS(wxMemoryDCImpl
)
41 wxDECLARE_NO_COPY_CLASS(wxMemoryDCImpl
);