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 WXDLLEXPORT wxMemoryDCImpl
: public wxMSWDCImpl
21 wxMemoryDCImpl( wxMemoryDC
*owner
);
22 wxMemoryDCImpl( wxMemoryDC
*owner
, wxBitmap
& bitmap
);
23 wxMemoryDCImpl( wxMemoryDC
*owner
, wxDC
*dc
); // Create compatible DC
27 // override some base class virtuals
28 virtual void DoDrawRectangle(wxCoord x
, wxCoord y
, wxCoord width
, wxCoord height
);
29 virtual void DoGetSize(int* width
, int* height
) const;
30 virtual void DoSelect(const wxBitmap
& bitmap
);
32 virtual wxBitmap
DoGetAsBitmap(const wxRect
* subrect
) const
33 { return subrect
== NULL
? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmapOfHDC(*subrect
, GetHDC() );}
35 // create DC compatible with the given one or screen if dc == NULL
36 bool CreateCompatible(wxDC
*dc
);
38 // initialize the newly created DC
42 DECLARE_CLASS(wxMemoryDCImpl
)
43 DECLARE_NO_COPY_CLASS(wxMemoryDCImpl
)