]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/dfb/dcmemory.h
Complete rewrite of DoDrawBitmap() and DoBlit().
[wxWidgets.git] / include / wx / dfb / dcmemory.h
index afe7fcf12f80240089df0c8f0bcbd0a230f3ae2e..4ff01bd564f61580184c45ddbdd9a122009452c1 100644 (file)
 #ifndef _WX_DFB_DCMEMORY_H_
 #define _WX_DFB_DCMEMORY_H_
 
-#include "wx/dc.h"
+#include "wx/dfb/dc.h"
 #include "wx/bitmap.h"
 
-class WXDLLIMPEXP_CORE wxMemoryDC : public wxDC
+class WXDLLIMPEXP_CORE wxMemoryDCImpl : public wxDFBDCImpl
 {
 public:
-    wxMemoryDC();
-    wxMemoryDC(wxDC *dc); // create compatible DC
+    wxMemoryDCImpl(wxMemoryDC *owner);
+    wxMemoryDCImpl(wxMemoryDC *owner, wxBitmap& bitmap);
+    wxMemoryDCImpl(wxMemoryDC *owner, wxDC *dc); // create compatible DC
 
-    virtual void SelectObject(const wxBitmap& bitmap);
+    // override wxMemoryDC-specific base class virtual methods
+    virtual const wxBitmap& GetSelectedBitmap() const { return m_bmp; }
+    virtual wxBitmap& GetSelectedBitmap() { return m_bmp; }
+    virtual void DoSelect(const wxBitmap& bitmap);
 
-    DECLARE_DYNAMIC_CLASS(wxMemoryDC)
+private:
+    void Init();
+
+    wxBitmap m_bmp;
+
+    DECLARE_DYNAMIC_CLASS(wxMemoryDCImpl)
 };
 
 #endif // _WX_DFB_DCMEMORY_H_