]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/motif/dc.h
Listctrl updates
[wxWidgets.git] / include / wx / motif / dc.h
index 3b668ce02d974b1fade04ddec489c64d687c8cb5..dda90fba80ad0af04aac1897aa0d844e51ff08d9 100644 (file)
@@ -61,10 +61,10 @@ class WXDLLEXPORT wxDC: public wxObject
     
     virtual bool Ok(void) const { return m_ok; };
 
-    virtual void FloodFill( long x1, long y1, wxColour* col, int style=wxFLOOD_SURFACE ) = 0;
+    virtual void FloodFill( long x1, long y1, const wxColour& col, int style=wxFLOOD_SURFACE ) = 0;
     inline void FloodFill(const wxPoint& pt, const wxColour& col, int style=wxFLOOD_SURFACE)
     {
-        FloodFill(pt.x, pt.y, (wxColour*) & col, style);
+        FloodFill(pt.x, pt.y, col, style);
     }
 
     virtual bool GetPixel( long x1, long y1, wxColour *col ) const = 0;
@@ -137,7 +137,7 @@ class WXDLLEXPORT wxDC: public wxObject
     }
 
     virtual void DrawSpline( long x1, long y1, long x2, long y2, long x3, long y3 );
-    virtual void DrawSpline( wxList *points );
+    virtual void DrawSpline( wxList *points ) = 0;
     virtual void DrawSpline( int n, wxPoint points[] );
     
     virtual bool CanDrawBitmap(void) const = 0;
@@ -148,10 +148,9 @@ class WXDLLEXPORT wxDC: public wxObject
         DrawIcon(icon, pt.x, pt.y);
     }
 
-    // TODO DrawBitmap is not always the same as DrawIcon, especially if bitmaps and
+    // DrawBitmap is not always the same as DrawIcon, especially if bitmaps and
     // icons are implemented differently.
-    void DrawBitmap( const wxBitmap &bmp, long x, long y, bool useMask=FALSE )
-             { DrawIcon( *((wxIcon*)(&bmp)), x, y, useMask ); }
+    virtual void DrawBitmap( const wxBitmap &bmp, 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 ) = 0;
@@ -238,7 +237,7 @@ class WXDLLEXPORT wxDC: public wxObject
 
     virtual void SetAxisOrientation( bool xLeftRight, bool yBottomUp );
     
-    virtual void SetOptimization( bool WXUNUSED(optimize) ) {};
+    virtual void SetOptimization( bool optimize ) { m_optimize = optimize; };
     virtual bool GetOptimization(void) { return m_optimize; };
     
     virtual long DeviceToLogicalX(long x) const;
@@ -293,6 +292,15 @@ class WXDLLEXPORT wxDC: public wxObject
          else
            return (long)((double)(new_x) * m_scaleX - 0.5) * m_signX + m_deviceOriginX;
        }
+    // Without device translation, for backing pixmap purposes
+    long XLOG2DEV_2(long x) const
+       { 
+         long new_x = x - m_logicalOriginX;
+         if (new_x > 0)
+           return (long)((double)(new_x) * m_scaleX + 0.5) * m_signX;
+         else
+           return (long)((double)(new_x) * m_scaleX - 0.5) * m_signX;
+       }
     long XLOG2DEVREL(long x) const
        { 
          if (x > 0)
@@ -308,6 +316,15 @@ class WXDLLEXPORT wxDC: public wxObject
          else
            return (long)((double)(new_y) * m_scaleY - 0.5) * m_signY + m_deviceOriginY;
        }
+    // Without device translation, for backing pixmap purposes
+    long YLOG2DEV_2(long y) const
+       {
+         long new_y = y - m_logicalOriginY;
+         if (new_y > 0)
+           return (long)((double)(new_y) * m_scaleY + 0.5) * m_signY;
+         else
+           return (long)((double)(new_y) * m_scaleY - 0.5) * m_signY;
+       }
     long YLOG2DEVREL(long y) const
        { 
          if (y > 0)
@@ -316,8 +333,6 @@ class WXDLLEXPORT wxDC: public wxObject
            return (long)((double)(y) * m_scaleY - 0.5);
        }
   
-    virtual void DrawOpenSpline( wxList *points ) = 0;
-       
   public:
     
     bool         m_ok;
@@ -325,11 +340,9 @@ class WXDLLEXPORT wxDC: public wxObject
     
     // not sure, what these mean
     bool         m_clipping;      // Is clipping on right now ?
-    bool         m_isInteractive; // Is GetPixel possible ?
-    bool         m_autoSetting;   // wxMSW only ?
-    bool         m_dontDelete;    // wxMSW only ?
     bool         m_optimize;      // wxMSW only ?
-    wxString     m_filename;      // Not sure where this belongs.
+    bool         m_isInteractive; // For wxPostScriptDC
+    wxString     m_filename;      // Ditto
     
     wxPen        m_pen;
     wxBrush      m_brush;