X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2d5855f6e4db0de1adba6ae19e194b6eb636e533..dd9f8b6bb6935360a8271dc3e8749fb026b601a8:/include/wx/os2/dcmemory.h?ds=sidebyside diff --git a/include/wx/os2/dcmemory.h b/include/wx/os2/dcmemory.h index cc81974d4b..194157da9e 100644 --- a/include/wx/os2/dcmemory.h +++ b/include/wx/os2/dcmemory.h @@ -12,48 +12,33 @@ #ifndef _WX_DCMEMORY_H_ #define _WX_DCMEMORY_H_ -#include "wx/dcclient.h" +#include "wx/dcmemory.h" +#include "wx/os2/dc.h" -class WXDLLEXPORT wxMemoryDC: public wxDC +class WXDLLEXPORT wxMemoryDCImpl: public wxPMDCImpl { public: - wxMemoryDC(void); - wxMemoryDC(wxDC* pDC); // Create compatible DC + wxMemoryDCImpl( wxMemoryDC *owner ); + wxMemoryDCImpl( wxMemoryDC *owner, wxBitmap& bitmap ); + wxMemoryDCImpl( wxMemoryDC *owner, wxDC* pDC); // Create compatible DC - virtual void SelectObject(const wxBitmap& rBitmap); -protected: // override some base class virtuals - virtual void DoDrawRectangle( wxCoord vX - ,wxCoord vY - ,wxCoord vWidth - ,wxCoord vHeight - ); - virtual void DoDrawRoundedRectangle( wxCoord vX - ,wxCoord vY - ,wxCoord vWidth - ,wxCoord vHeight - ,double dRadius - ); - virtual void DoDrawText( const wxString& rsText - ,wxCoord vX - ,wxCoord vY - ); - virtual void DoDrawLine( wxCoord vX1 - ,wxCoord vY1 - ,wxCoord vX2 - ,wxCoord vY2 - ); - virtual void DoGetSize( int* pWidth - ,int* pHeight - ) const; + virtual void DoGetSize(int* pWidth, int* pHeight) const; + virtual void DoSelect(const wxBitmap& bitmap); + + virtual wxBitmap DoGetAsBitmap(const wxRect* subrect) const + { return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect);} + +protected: // create DC compatible with the given one or screen if dc == NULL bool CreateCompatible(wxDC* pDC); // initialize the newly created DC void Init(void); private: - DECLARE_DYNAMIC_CLASS(wxMemoryDC) -}; // end of CLASS wxMemoryDC + DECLARE_CLASS(wxMemoryDCImpl) + DECLARE_NO_COPY_CLASS(wxMemoryDCImpl) +}; // end of CLASS wxMemoryDCImpl #endif // _WX_DCMEMORY_H_