adapting to new inheritance of wxMemoryDC (under MSW only at the moment)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor 2006-11-06 09:47:20 +00:00
parent 93f72baea4
commit 773ccc318e
6 changed files with 44 additions and 1 deletions

View File

@ -36,6 +36,9 @@ class WXDLLEXPORT wxGCDC:
public:
wxGCDC(const wxWindowDC& dc);
#ifdef __WXMSW__
wxGCDC( const wxMemoryDC& dc);
#endif
wxGCDC();
virtual ~wxGCDC();

View File

@ -18,6 +18,7 @@
#include "wx/dynarray.h"
class WXDLLIMPEXP_CORE wxWindowDC;
class WXDLLIMPEXP_CORE wxMemoryDC;
class WXDLLIMPEXP_CORE wxGraphicsContext;
class WXDLLIMPEXP_CORE wxGraphicsPath;
class WXDLLIMPEXP_CORE wxGraphicsMatrix;
@ -387,6 +388,10 @@ public:
static wxGraphicsContext* Create( const wxWindowDC& dc) ;
#ifdef __WXMSW__
static wxGraphicsContext * Create( const wxMemoryDC& dc) ;
#endif
static wxGraphicsContext* CreateFromNative( void * context ) ;
static wxGraphicsContext* CreateFromNativeWindow( void * window ) ;
@ -605,7 +610,9 @@ public :
// Context
virtual wxGraphicsContext * CreateContext( const wxWindowDC& dc) = 0 ;
#ifdef __WXMSW__
virtual wxGraphicsContext * CreateContext( const wxMemoryDC& dc) = 0 ;
#endif
virtual wxGraphicsContext * CreateContextFromNativeContext( void * context ) = 0;
virtual wxGraphicsContext * CreateContextFromNativeWindow( void * window ) = 0;

View File

@ -83,6 +83,14 @@ wxGCDC::wxGCDC(const wxWindowDC& dc)
SetGraphicsContext( wxGraphicsContext::Create(dc) );
}
#ifdef __WXMSW__
wxGCDC::wxGCDC(const wxMemoryDC& dc)
{
Init();
SetGraphicsContext( wxGraphicsContext::Create(dc) );
}
#endif
void wxGCDC::Init()
{
m_ok = false;

View File

@ -707,6 +707,12 @@ wxGraphicsContext* wxGraphicsContext::Create( const wxWindowDC& dc)
{
return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(dc);
}
#ifdef __WXMSW__
wxGraphicsContext* wxGraphicsContext::Create( const wxMemoryDC& dc)
{
return wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(dc);
}
#endif
wxGraphicsContext* wxGraphicsContext::CreateFromNative( void * context )
{

View File

@ -1166,6 +1166,10 @@ public :
virtual wxGraphicsContext * CreateContext( const wxWindowDC& dc);
#ifdef __WXMSW__
virtual wxGraphicsContext * CreateContext( const wxMemoryDC& dc);
#endif
virtual wxGraphicsContext * CreateContextFromNativeContext( void * context );
virtual wxGraphicsContext * CreateContextFromNativeWindow( void * window );
@ -1224,6 +1228,13 @@ wxGraphicsContext * wxCairoRenderer::CreateContext( const wxWindowDC& dc)
return new wxCairoContext(this,dc);
}
#ifdef __WXMSW__
wxGraphicsContext * wxCairoRenderer::CreateContext( const wxMemoryDC& dc)
{
return NULL;
}
#endif
wxGraphicsContext * wxCairoRenderer::CreateContextFromNativeContext( void * context )
{
return new wxCairoContext(this,(cairo_t*)context);

View File

@ -1227,6 +1227,8 @@ public :
virtual wxGraphicsContext * CreateContext( const wxWindowDC& dc);
virtual wxGraphicsContext * CreateContext( const wxMemoryDC& dc);
virtual wxGraphicsContext * CreateContextFromNativeContext( void * context );
virtual wxGraphicsContext * CreateContextFromNativeWindow( void * window );
@ -1313,6 +1315,12 @@ wxGraphicsContext * wxGDIPlusRenderer::CreateContext( const wxWindowDC& dc)
return new wxGDIPlusContext(this,(HDC) dc.GetHDC());
}
wxGraphicsContext * wxGDIPlusRenderer::CreateContext( const wxMemoryDC& dc)
{
EnsureIsLoaded();
return new wxGDIPlusContext(this,(HDC) dc.GetHDC());
}
wxGraphicsContext * wxGDIPlusRenderer::CreateMeasuringContext()
{
EnsureIsLoaded();