git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50547
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
#include "wx/dc.h"
#include "wx/geometry.h"
#include "wx/dc.h"
#include "wx/geometry.h"
-#include "wx/dynarray.h"
#include "wx/graphics.h"
class WXDLLIMPEXP_FWD_CORE wxWindowDC;
#include "wx/graphics.h"
class WXDLLIMPEXP_FWD_CORE wxWindowDC;
wxGraphicsContext* GetGraphicsContext();
void SetGraphicsContext( wxGraphicsContext* ctx );
wxGraphicsContext* GetGraphicsContext();
void SetGraphicsContext( wxGraphicsContext* ctx );
DECLARE_DYNAMIC_CLASS(wxGCDC)
DECLARE_NO_COPY_CLASS(wxGCDC)
};
DECLARE_DYNAMIC_CLASS(wxGCDC)
DECLARE_NO_COPY_CLASS(wxGCDC)
};
class WXDLLEXPORT wxGCDCImpl: public wxDCImpl
{
public:
class WXDLLEXPORT wxGCDCImpl: public wxDCImpl
{
public:
wxGraphicsContext* GetGraphicsContext() { return m_graphicContext; }
virtual void SetGraphicsContext( wxGraphicsContext* ctx );
wxGraphicsContext* GetGraphicsContext() { return m_graphicContext; }
virtual void SetGraphicsContext( wxGraphicsContext* ctx );
// the true implementations
virtual bool DoFloodFill(wxCoord x, wxCoord y, const wxColour& col,
int style = wxFLOOD_SURFACE);
// the true implementations
virtual bool DoFloodFill(wxCoord x, wxCoord y, const wxColour& col,
int style = wxFLOOD_SURFACE);
wxGraphicsContext* m_graphicContext;
wxGraphicsContext* m_graphicContext;
DECLARE_CLASS(wxGCDCImpl)
DECLARE_NO_COPY_CLASS(wxGCDCImpl)
};
DECLARE_CLASS(wxGCDCImpl)
DECLARE_NO_COPY_CLASS(wxGCDCImpl)
};
+#endif // wxUSE_GRAPHICS_CONTEXT
#endif // _WX_GRAPHICS_DC_H_
#endif // _WX_GRAPHICS_DC_H_
virtual GdkWindow* GetGDKWindow() const { return NULL; }
virtual GdkWindow* GetGDKWindow() const { return NULL; }
// base class pure virtuals implemented here
virtual void DoSetClippingRegion(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
virtual void DoGetSizeMM(int* width, int* height) const;
// base class pure virtuals implemented here
virtual void DoSetClippingRegion(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
virtual void DoGetSizeMM(int* width, int* height) const;
DECLARE_ABSTRACT_CLASS(wxGTKDCImpl)
};
DECLARE_ABSTRACT_CLASS(wxGTKDCImpl)
};
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifndef __GTKDCCLIENTH__
-#define __GTKDCCLIENTH__
+#ifndef _WX_GTKDCCLIENT_H_
+#define _WX_GTKDCCLIENT_H_
#include "wx/gtk/dc.h"
#include "wx/dcclient.h"
#include "wx/region.h"
#include "wx/gtk/dc.h"
#include "wx/dcclient.h"
#include "wx/region.h"
virtual bool CanDrawBitmap() const { return true; }
virtual bool CanGetTextExtent() const { return true; }
virtual bool CanDrawBitmap() const { return true; }
virtual bool CanGetTextExtent() const { return true; }
virtual void DoGetSize(int *width, int *height) const;
virtual bool DoFloodFill( wxCoord x, wxCoord y, const wxColour& col, int style=wxFLOOD_SURFACE );
virtual bool DoGetPixel( wxCoord x1, wxCoord y1, wxColour *col ) const;
virtual void DoGetSize(int *width, int *height) const;
virtual bool DoFloodFill( wxCoord x, wxCoord y, const wxColour& col, int style=wxFLOOD_SURFACE );
virtual bool DoGetPixel( wxCoord x1, wxCoord y1, wxColour *col ) const;
virtual void DoSetClippingRegion( wxCoord x, wxCoord y, wxCoord width, wxCoord height );
virtual void DoSetClippingRegionAsRegion( const wxRegion ®ion );
virtual void DoSetClippingRegion( wxCoord x, wxCoord y, wxCoord width, wxCoord height );
virtual void DoSetClippingRegionAsRegion( const wxRegion ®ion );
virtual wxCoord GetCharWidth() const;
virtual wxCoord GetCharHeight() const;
virtual wxCoord GetCharWidth() const;
virtual wxCoord GetCharHeight() const;
virtual GdkWindow *GetGDKWindow() const { return m_gdkwindow; }
virtual GdkWindow *GetGDKWindow() const { return m_gdkwindow; }
DECLARE_ABSTRACT_CLASS(wxWindowDCImpl)
};
DECLARE_ABSTRACT_CLASS(wxWindowDCImpl)
};
wxClientDCImpl( wxDC *owner );
wxClientDCImpl( wxDC *owner, wxWindow *win );
wxClientDCImpl( wxDC *owner );
wxClientDCImpl( wxDC *owner, wxWindow *win );
virtual void DoGetSize(int *width, int *height) const;
virtual void DoGetSize(int *width, int *height) const;
DECLARE_ABSTRACT_CLASS(wxClientDCImpl)
};
DECLARE_ABSTRACT_CLASS(wxClientDCImpl)
};
wxPaintDCImpl( wxDC *owner );
wxPaintDCImpl( wxDC *owner, wxWindow *win );
wxPaintDCImpl( wxDC *owner );
wxPaintDCImpl( wxDC *owner, wxWindow *win );
DECLARE_ABSTRACT_CLASS(wxPaintDCImpl)
};
DECLARE_ABSTRACT_CLASS(wxPaintDCImpl)
};
-#endif
- // __GTKDCCLIENTH__
-
+#endif // _WX_GTKDCCLIENT_H_
virtual void SetTextForeground( const wxColour &col );
virtual void SetTextBackground( const wxColour &col );
virtual void SetTextForeground( const wxColour &col );
virtual void SetTextBackground( const wxColour &col );
// overridden from wxDCImpl
virtual void DoGetSize( int *width, int *height ) const;
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const;
// overridden from wxDCImpl
virtual void DoGetSize( int *width, int *height ) const;
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const;
// overridden for wxMemoryDC Impl
virtual void DoSelect(const wxBitmap& bitmap);
// overridden for wxMemoryDC Impl
virtual void DoSelect(const wxBitmap& bitmap);
virtual const wxBitmap& GetSelectedBitmap() const;
virtual wxBitmap& GetSelectedBitmap();
private:
wxBitmap m_selected;
virtual const wxBitmap& GetSelectedBitmap() const;
virtual wxBitmap& GetSelectedBitmap();
private:
wxBitmap m_selected;
void Init();
DECLARE_ABSTRACT_CLASS(wxMemoryDCImpl)
void Init();
DECLARE_ABSTRACT_CLASS(wxMemoryDCImpl)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifndef __GTKDCSCREENH__
-#define __GTKDCSCREENH__
+#ifndef _WX_GTKDCSCREEN_H_
+#define _WX_GTKDCSCREEN_H_
#include "wx/dcscreen.h"
#include "wx/gtk/dcclient.h"
#include "wx/dcscreen.h"
#include "wx/gtk/dcclient.h"
wxScreenDCImpl( wxScreenDC *owner );
~wxScreenDCImpl();
wxScreenDCImpl( wxScreenDC *owner );
~wxScreenDCImpl();
virtual void DoGetSize(int *width, int *height) const;
virtual void DoGetSize(int *width, int *height) const;
DECLARE_ABSTRACT_CLASS(wxScreenDCImpl)
};
DECLARE_ABSTRACT_CLASS(wxScreenDCImpl)
};
-#endif // __GTKDCSCREENH__
-
+#endif // _WX_GTKDCSCREEN_H_
wxWindowDCImpl( wxDC *owner, wxWindow *window );
virtual ~wxWindowDCImpl();
wxWindowDCImpl( wxDC *owner, wxWindow *window );
virtual ~wxWindowDCImpl();
virtual void DoGetSize( int *width, int *height ) const;
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const;
virtual void DoGetSize( int *width, int *height ) const;
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const;
bool m_release;
int m_width;
int m_height;
bool m_release;
int m_width;
int m_height;
DECLARE_CLASS(wxWindowDCImpl)
DECLARE_NO_COPY_CLASS(wxWindowDCImpl)
};
DECLARE_CLASS(wxWindowDCImpl)
DECLARE_NO_COPY_CLASS(wxWindowDCImpl)
};
virtual ~wxMemoryDCImpl();
virtual ~wxMemoryDCImpl();
virtual void DoGetSize( int *width, int *height ) const;
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
{ return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect); }
virtual void DoGetSize( int *width, int *height ) const;
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const
{ return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmap(*subrect); }
DECLARE_CLASS(wxMemoryDCImpl)
DECLARE_NO_COPY_CLASS(wxMemoryDCImpl)
};
DECLARE_CLASS(wxMemoryDCImpl)
DECLARE_NO_COPY_CLASS(wxMemoryDCImpl)
};
void RealizeScaleAndOrigin();
void RealizeScaleAndOrigin();
virtual void DoGetTextExtent(const wxString& string,
wxCoord *x, wxCoord *y,
wxCoord *descent = NULL,
virtual void DoGetTextExtent(const wxString& string,
wxCoord *x, wxCoord *y,
wxCoord *descent = NULL,
void InitializePalette();
#endif // wxUSE_PALETTE
void InitializePalette();
#endif // wxUSE_PALETTE
// common part of DoDrawText() and DoDrawRotatedText()
void DrawAnyText(const wxString& text, wxCoord x, wxCoord y);
// common part of DoDrawText() and DoDrawRotatedText()
void DrawAnyText(const wxString& text, wxCoord x, wxCoord y);
virtual void DoGetSize(int *w, int *h) const
{
wxASSERT_MSG( m_size.IsFullySpecified(),
virtual void DoGetSize(int *w, int *h) const
{
wxASSERT_MSG( m_size.IsFullySpecified(),
// Create a DC corresponding to the whole window
wxWindowDCImpl( wxDC *owner, wxWindow *win );
// Create a DC corresponding to the whole window
wxWindowDCImpl( wxDC *owner, wxWindow *win );
+ virtual void DoGetSize(int *width, int *height) const;
+
protected:
// initialize the newly created DC
void InitDC();
protected:
// initialize the newly created DC
void InitDC();
- // override some base class virtuals
- virtual void DoGetSize(int *width, int *height) const;
-
-private:
DECLARE_CLASS(wxWindowDCImpl)
DECLARE_NO_COPY_CLASS(wxWindowDCImpl)
};
DECLARE_CLASS(wxWindowDCImpl)
DECLARE_NO_COPY_CLASS(wxWindowDCImpl)
};
virtual ~wxClientDCImpl();
virtual ~wxClientDCImpl();
+ virtual void DoGetSize(int *width, int *height) const;
+
protected:
void InitDC();
protected:
void InitDC();
- // override some base class virtuals
- virtual void DoGetSize(int *width, int *height) const;
-
-private:
DECLARE_CLASS(wxClientDCImpl)
DECLARE_NO_COPY_CLASS(wxClientDCImpl)
};
DECLARE_CLASS(wxClientDCImpl)
DECLARE_NO_COPY_CLASS(wxClientDCImpl)
};
// find the entry for this DC in the cache (keyed by the window)
wxPaintDCInfo *FindInCache(size_t *index = NULL) const;
// find the entry for this DC in the cache (keyed by the window)
wxPaintDCInfo *FindInCache(size_t *index = NULL) const;
DECLARE_CLASS(wxPaintDCImpl)
DECLARE_NO_COPY_CLASS(wxPaintDCImpl)
};
DECLARE_CLASS(wxPaintDCImpl)
DECLARE_NO_COPY_CLASS(wxPaintDCImpl)
};
public:
wxPaintDCEx(wxWindow *canvas, WXHDC dc);
public:
wxPaintDCEx(wxWindow *canvas, WXHDC dc);
DECLARE_CLASS(wxPaintDCEx)
DECLARE_NO_COPY_CLASS(wxPaintDCEx)
};
DECLARE_CLASS(wxPaintDCEx)
DECLARE_NO_COPY_CLASS(wxPaintDCEx)
};
wxMemoryDCImpl( wxMemoryDC *owner, wxBitmap& bitmap );
wxMemoryDCImpl( wxMemoryDC *owner, wxDC *dc ); // Create compatible DC
wxMemoryDCImpl( wxMemoryDC *owner, wxBitmap& bitmap );
wxMemoryDCImpl( wxMemoryDC *owner, wxDC *dc ); // Create compatible DC
// override some base class virtuals
virtual void DoDrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
virtual void DoGetSize(int* width, int* height) const;
// override some base class virtuals
virtual void DoDrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
virtual void DoGetSize(int* width, int* height) const;
virtual wxBitmap DoGetAsBitmap(const wxRect* subrect) const
{ return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmapOfHDC(*subrect, GetHDC() );}
virtual wxBitmap DoGetAsBitmap(const wxRect* subrect) const
{ return subrect == NULL ? GetSelectedBitmap() : GetSelectedBitmap().GetSubBitmapOfHDC(*subrect, GetHDC() );}
// create DC compatible with the given one or screen if dc == NULL
bool CreateCompatible(wxDC *dc);
// initialize the newly created DC
void Init();
// create DC compatible with the given one or screen if dc == NULL
bool CreateCompatible(wxDC *dc);
// initialize the newly created DC
void Init();
DECLARE_CLASS(wxMemoryDCImpl)
DECLARE_NO_COPY_CLASS(wxMemoryDCImpl)
};
DECLARE_CLASS(wxMemoryDCImpl)
DECLARE_NO_COPY_CLASS(wxMemoryDCImpl)
};
// Create a DC representing the whole screen
wxScreenDCImpl( wxScreenDC *owner );
// Create a DC representing the whole screen
wxScreenDCImpl( wxScreenDC *owner );
virtual void DoGetSize(int *w, int *h) const
{
GetDeviceSize(w, h);
}
virtual void DoGetSize(int *w, int *h) const
{
GetDeviceSize(w, h);
}
DECLARE_CLASS(wxScreenDCImpl)
DECLARE_NO_COPY_CLASS(wxScreenDCImpl)
};
DECLARE_CLASS(wxScreenDCImpl)
DECLARE_NO_COPY_CLASS(wxScreenDCImpl)
};