X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/432efcb004c8a7f4997acab1aa044c78226c36bb..f239a20092359e3c914adb79bd39f3f5d2b2e06f:/src/motif/dcmemory.cpp?ds=sidebyside diff --git a/src/motif/dcmemory.cpp b/src/motif/dcmemory.cpp index 789dac864d..72c64deea8 100644 --- a/src/motif/dcmemory.cpp +++ b/src/motif/dcmemory.cpp @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: src/motif/dcmemory.cpp -// Purpose: wxMemoryDC class +// Purpose: wxMemoryDCImpl class // Author: Julian Smart // Modified by: // Created: 01/02/97 @@ -12,11 +12,11 @@ // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/dcmemory.h" - #ifndef WX_PRECOMP #include "wx/utils.h" #include "wx/settings.h" + #include "wx/dcmemory.h" + #include "wx/dcclient.h" #endif #ifdef __VMS__ @@ -28,14 +28,15 @@ #endif #include "wx/motif/private.h" +#include "wx/motif/dcmemory.h" //----------------------------------------------------------------------------- -// wxMemoryDC +// wxMemoryDCImpl //----------------------------------------------------------------------------- -IMPLEMENT_DYNAMIC_CLASS(wxMemoryDC, wxWindowDC) +IMPLEMENT_ABSTRACT_CLASS(wxMemoryDCImpl, wxWindowDCImpl) -wxMemoryDC::wxMemoryDC( const wxBitmap& bitmap ) +void wxMemoryDCImpl::Init() { m_ok = true; m_display = wxGetDisplay(); @@ -57,16 +58,14 @@ wxMemoryDC::wxMemoryDC( const wxBitmap& bitmap ) SetBrush (* wxWHITE_BRUSH); SetPen (* wxBLACK_PEN); SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT)); - - if ( bitmap.IsOk() ) - SelectObject(bitmap); } -wxMemoryDC::wxMemoryDC( wxDC* dc ) +wxMemoryDCImpl::wxMemoryDCImpl(wxMemoryDC *owner, wxDC* dc) + : wxWindowDCImpl(owner) { m_ok = true; if (dc && dc->IsKindOf(CLASSINFO(wxWindowDC))) - m_display = ((wxWindowDC*)dc)->GetDisplay(); + m_display = ((wxWindowDCImpl *)dc->GetImpl())->GetDisplay(); else m_display = wxGetDisplay(); @@ -88,11 +87,11 @@ wxMemoryDC::wxMemoryDC( wxDC* dc ) SetPen (* wxBLACK_PEN); } -wxMemoryDC::~wxMemoryDC(void) +wxMemoryDCImpl::~wxMemoryDCImpl(void) { } -void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) +void wxMemoryDCImpl::DoSelect( const wxBitmap& bitmap ) { m_bitmap = bitmap; @@ -100,7 +99,7 @@ void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) XFreeGC((Display*) m_display, (GC) m_gc); m_gc = (WXGC) NULL; - if (m_bitmap.Ok() && (bitmap.GetDisplay() == m_display)) + if (m_bitmap.IsOk() && (bitmap.GetDisplay() == m_display)) { m_pixmap = m_bitmap.GetDrawable(); Display* display = (Display*) m_display; @@ -128,9 +127,9 @@ void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) }; } -void wxMemoryDC::DoGetSize( int *width, int *height ) const +void wxMemoryDCImpl::DoGetSize( int *width, int *height ) const { - if (m_bitmap.Ok()) + if (m_bitmap.IsOk()) { if (width) (*width) = m_bitmap.GetWidth(); if (height) (*height) = m_bitmap.GetHeight();