Converted wxGTK's basic DC classes to new DC code

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2007-09-23 11:27:41 +00:00
parent fc1f568e23
commit ab171e9502
16 changed files with 962 additions and 646 deletions

View File

@@ -12,8 +12,53 @@
#ifndef _WX_DCMEMORY_H_BASE_
#define _WX_DCMEMORY_H_BASE_
#include "wx/dc.h"
#include "wx/bitmap.h"
#if wxUSE_NEW_DC
//-----------------------------------------------------------------------------
// wxMemoryDC
//-----------------------------------------------------------------------------
class WXDLLIMPEXP_CORE wxMemoryImplDCBase
{
public:
wxMemoryImplDCBase() { }
virtual void DoSelect(const wxBitmap& bmp) = 0;
virtual const wxBitmap& DoGetSelectedBitmap() const = 0;
virtual wxBitmap& DoGetSelectedBitmap() = 0;
};
class WXDLLIMPEXP_CORE wxMemoryDC: public wxDC
{
public:
wxMemoryDC();
wxMemoryDC( wxBitmap& bitmap );
wxMemoryDC( wxDC *dc );
// select the given bitmap to draw on it
void SelectObject(wxBitmap& bmp);
// select the given bitmap for read-only
void SelectObjectAsSource(const wxBitmap& bmp);
// get selected bitmap
const wxBitmap& GetSelectedBitmap() const;
wxBitmap& GetSelectedBitmap();
private:
DECLARE_DYNAMIC_CLASS(wxMemoryDC)
};
#else
// NOTE: different native implementations of wxMemoryDC will derive from
// different wxDC classes (wxPaintDC, wxWindowDC, etc), so that
// we cannot derive wxMemoryDCBase from wxDC and then use it as the
@@ -48,6 +93,10 @@ protected:
virtual void DoSelect(const wxBitmap& bmp) = 0;
};
#endif
#if defined(__WXPALMOS__)
#include "wx/palmos/dcmemory.h"
#elif defined(__WXMSW__)