]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/os2/pen.h
adopting correct implementation virtualization for Do/GradientFillConcentric
[wxWidgets.git] / include / wx / os2 / pen.h
index e89c11a158557986e4902b5e2889309437b4a9eb..3594ffebec0f1cad7492a4bb024db81b65e85277 100644 (file)
@@ -25,7 +25,7 @@ class WXDLLEXPORT wxPenRefData: public wxGDIRefData
 public:
     wxPenRefData();
     wxPenRefData(const wxPenRefData& rData);
-    ~wxPenRefData();
+    virtual ~wxPenRefData();
 
 protected:
     int                             m_nWidth;
@@ -33,6 +33,8 @@ protected:
     int                             m_nJoin;
     int                             m_nCap;
     wxBitmap                        m_vStipple;
+    int                             m_nbDash;
+    wxDash *                        m_dash;
     wxColour                        m_vColour;
     WXHPEN                          m_hPen;// in OS/2 GPI this will be the PS the pen is associated with
 };
@@ -52,11 +54,8 @@ public:
     wxPen( const wxBitmap& rStipple
           ,int             nWidth
          );
-    inline wxPen(const wxPen& rPen) { Ref(rPen); }
-    ~wxPen();
+    virtual ~wxPen();
 
-    inline wxPen& operator =  (const wxPen& rPen)
-        { if (*this == rPen) return (*this); Ref(rPen); return *this; }
     inline bool   operator == (const wxPen& rPen) const
         { return m_refData == rPen.m_refData; }
     inline bool   operator != (const wxPen& rPen) const
@@ -86,6 +85,13 @@ public:
     inline int       GetJoin(void) const { return (M_PENDATA ? M_PENDATA->m_nJoin : 0); };
     inline int       GetCap(void) const { return (M_PENDATA ? M_PENDATA->m_nCap : 0); };
     inline int       GetPS(void) const { return (M_PENDATA ? M_PENDATA->m_hPen : 0); };
+    inline int       GetDashes(wxDash **ptr) const
+    {
+        *ptr = (M_PENDATA ? (wxDash*)M_PENDATA->m_dash : (wxDash*) NULL);
+        return (M_PENDATA ? M_PENDATA->m_nbDash : 0);
+    }
+    inline wxDash*   GetDash() const { return (M_PENDATA ? (wxDash*)M_PENDATA->m_dash : (wxDash*)NULL); };
+    inline int       GetDashCount() const { return (M_PENDATA ? M_PENDATA->m_nbDash : 0); };
 
     inline wxBitmap* GetStipple(void) const { return (M_PENDATA ? (& M_PENDATA->m_vStipple) : (wxBitmap*) NULL); };