X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83624f79609f0d5e240c1f7d77d044bfff9702fc..57c4d796c56bd48ce370240107f3e4c07e142985:/src/gtk1/pen.cpp diff --git a/src/gtk1/pen.cpp b/src/gtk1/pen.cpp index 3152074605..f928f2fe54 100644 --- a/src/gtk1/pen.cpp +++ b/src/gtk1/pen.cpp @@ -24,14 +24,16 @@ class wxPenRefData: public wxObjectRefData { public: - wxPenRefData(void); - wxPenRefData(const wxPenRefData& data); + wxPenRefData(); + wxPenRefData( const wxPenRefData& data ); int m_width; int m_style; int m_joinStyle; int m_capStyle; wxColour m_colour; + int m_countDashes; + wxDash *m_dash; }; wxPenRefData::wxPenRefData() @@ -40,6 +42,8 @@ wxPenRefData::wxPenRefData() m_style = wxSOLID; m_joinStyle = wxJOIN_ROUND; m_capStyle = wxCAP_ROUND; + m_dash = (wxDash*) NULL; + m_countDashes = 0; } wxPenRefData::wxPenRefData( const wxPenRefData& data ) @@ -49,6 +53,12 @@ wxPenRefData::wxPenRefData( const wxPenRefData& data ) m_joinStyle = data.m_joinStyle; m_capStyle = data.m_capStyle; m_colour = data.m_colour; + m_countDashes = data.m_countDashes; +/* + if (data.m_dash) TODO + m_dash = new +*/ + m_dash = data.m_dash; } //----------------------------------------------------------------------------- @@ -106,6 +116,13 @@ void wxPen::SetColour( const wxColour &colour ) M_PENDATA->m_colour = colour; } +void wxPen::SetDashes( int number_of_dashes, const wxDash *dash ) +{ + Unshare(); + M_PENDATA->m_countDashes = number_of_dashes; + M_PENDATA->m_dash = (wxDash *)dash; /* TODO */ +} + void wxPen::SetColour( int red, int green, int blue ) { Unshare(); @@ -136,37 +153,53 @@ void wxPen::SetWidth( int width ) M_PENDATA->m_width = width; } +int wxPen::GetDashes( wxDash **ptr ) const +{ + *ptr = (M_PENDATA ? M_PENDATA->m_dash : (wxDash*) NULL); + return (M_PENDATA ? M_PENDATA->m_countDashes : 0); +} + +int wxPen::GetDashCount() const +{ + return (M_PENDATA->m_countDashes); +} + +wxDash* wxPen::GetDash() const +{ + return (M_PENDATA->m_dash); +} + int wxPen::GetCap() const { - wxCHECK_MSG( Ok(), -1, "invalid pen" ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_capStyle; } int wxPen::GetJoin() const { - wxCHECK_MSG( Ok(), -1, "invalid pen" ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_joinStyle; } int wxPen::GetStyle() const { - wxCHECK_MSG( Ok(), -1, "invalid pen" ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_style; } int wxPen::GetWidth() const { - wxCHECK_MSG( Ok(), -1, "invalid pen" ); + wxCHECK_MSG( Ok(), -1, wxT("invalid pen") ); return M_PENDATA->m_width; } wxColour &wxPen::GetColour() const { - wxCHECK_MSG( Ok(), wxNullColour, "invalid pen" ); + wxCHECK_MSG( Ok(), wxNullColour, wxT("invalid pen") ); return M_PENDATA->m_colour; }