]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/stubs/dcclient.h
gtkfeatures.h does not exist under gtk+ 1.3.1, #ifndef it out
[wxWidgets.git] / include / wx / stubs / dcclient.h
index 32650266772a4f386a7cef1d8679c467803b9437..29e4e6f7a06c5b50c1b6ae3dd31415874eef2dbc 100644 (file)
@@ -1,6 +1,6 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        dcclient.h
 /////////////////////////////////////////////////////////////////////////////
 // Name:        dcclient.h
-// Purpose:     wxClientDC class
+// Purpose:     wxClientDC, wxPaintDC and wxWindowDC classes
 // Author:      AUTHOR
 // Modified by:
 // Created:     ??/??/98
 // Author:      AUTHOR
 // Modified by:
 // Created:     ??/??/98
 
 #include "wx/dc.h"
 
 
 #include "wx/dc.h"
 
-class WXDLLEXPORT wxClientDC: public wxDC
-{
-  DECLARE_DYNAMIC_CLASS(wxClientDC)
+//-----------------------------------------------------------------------------
+// classes
+//-----------------------------------------------------------------------------
 
 
- public:
-  wxClientDC();
+class WXDLLEXPORT wxPaintDC;
+class WXDLLEXPORT wxWindow;
 
 
-  // Create a DC corresponding to a canvas
-  wxClientDC(wxWindow *win);
-
-  ~wxClientDC();
-};
+// Under Windows, wxClientDC, wxPaintDC and wxWindowDC are implemented differently.
+// On many platforms, however, they will be the same.
 
 class WXDLLEXPORT wxWindowDC: public wxDC
 {
   DECLARE_DYNAMIC_CLASS(wxWindowDC)
 
 
 class WXDLLEXPORT wxWindowDC: public wxDC
 {
   DECLARE_DYNAMIC_CLASS(wxWindowDC)
 
- public:
-  wxWindowDC();
+  public:
+
+    wxWindowDC(void);
+    wxWindowDC( wxWindow *win );
+
+    ~wxWindowDC(void);
+    
+    virtual void FloodFill( long x1, long y1, const wxColour& col, int style=wxFLOOD_SURFACE );
+    virtual bool GetPixel( long x1, long y1, wxColour *col ) const;
+
+    virtual void DrawLine( long x1, long y1, long x2, long y2 );
+    virtual void CrossHair( long x, long y );
+    virtual void DrawArc( long x1, long y1, long x2, long y2, long xc, long yc );
+    virtual void DrawEllipticArc( long x, long y, long width, long height, double sa, double ea );
+    virtual void DrawPoint( long x, long y );
+    
+    virtual void DrawLines( int n, wxPoint points[], long xoffset = 0, long yoffset = 0 );
+    virtual void DrawLines( wxList *points, long xoffset = 0, long yoffset = 0 );
+    virtual void DrawPolygon( int n, wxPoint points[], long xoffset = 0, long yoffset = 0, 
+                              int fillStyle=wxODDEVEN_RULE );
+    virtual void DrawPolygon( wxList *lines, long xoffset = 0, long yoffset = 0, 
+                              int fillStyle=wxODDEVEN_RULE );
+    
+    virtual void DrawRectangle( long x, long y, long width, long height );
+    virtual void DrawRoundedRectangle( long x, long y, long width, long height, double radius = 20.0 );
+    virtual void DrawEllipse( long x, long y, long width, long height );
+    
+    virtual bool CanDrawBitmap(void) const;
+    virtual void DrawIcon( const wxIcon &icon, long x, long y, bool useMask=FALSE );
+    virtual bool Blit( long xdest, long ydest, long width, long height,
+       wxDC *source, long xsrc, long ysrc, int logical_func = wxCOPY, bool useMask=FALSE );
+
+    virtual void DrawText( const wxString &text, long x, long y, bool use16 = FALSE );
+    virtual bool CanGetTextExtent(void) const;
+    virtual void GetTextExtent( const wxString &string, long *width, long *height,
+                     long *descent = NULL, long *externalLeading = NULL,
+                     wxFont *theFont = NULL, bool use16 = FALSE );
+    virtual long GetCharWidth(void);
+    virtual long GetCharHeight(void);
+    
+    virtual void Clear(void);
+            
+    virtual void SetFont( const wxFont &font );
+    virtual void SetPen( const wxPen &pen );
+    virtual void SetBrush( const wxBrush &brush );
+    virtual void SetBackground( const wxBrush &brush );
+    virtual void SetLogicalFunction( int function );
+    virtual void SetTextForeground( const wxColour &col );
+    virtual void SetTextBackground( const wxColour &col );
+    virtual void SetBackgroundMode( int mode );
+    virtual void SetPalette( const wxPalette& palette );
+    
+    virtual void SetClippingRegion( long x, long y, long width, long height );
+    virtual void SetClippingRegion( const wxRegion& region ) ;
+    virtual void DestroyClippingRegion(void);
+    
+    virtual void DrawSpline( wxList *points );
+};
 
 
-  // Create a DC corresponding to a canvas
-  wxWindowDC(wxWindow *win);
+//-----------------------------------------------------------------------------
+// wxPaintDC
+//-----------------------------------------------------------------------------
+
+class WXDLLEXPORT wxPaintDC: public wxWindowDC
+{
+  DECLARE_DYNAMIC_CLASS(wxPaintDC)
+
+  public:
+
+    wxPaintDC(void):wxWindowDC() {};
+    wxPaintDC( wxWindow *win ): wxWindowDC(win) {};
 
 
-  ~wxWindowDC();
 };
 
 };
 
-class WXDLLEXPORT wxPaintDC: public wxDC
+//-----------------------------------------------------------------------------
+// wxClientDC
+//-----------------------------------------------------------------------------
+
+class WXDLLEXPORT wxClientDC: public wxWindowDC
 {
 {
-  DECLARE_DYNAMIC_CLASS(wxPaintDC)
+  DECLARE_DYNAMIC_CLASS(wxClientDC)
 
 
- public:
-  wxPaintDC();
+  public:
 
 
-  // Create a DC corresponding to a canvas
-  wxPaintDC(wxWindow *win);
+    wxClientDC(void):wxWindowDC() {};
+    wxClientDC( wxWindow *win ): wxWindowDC(win) {};
 
 
-  ~wxPaintDC();
 };
 
 #endif
 };
 
 #endif