X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5d947bc83567d0b21a00cb18f184b7a5f0b8892c..f239a20092359e3c914adb79bd39f3f5d2b2e06f:/src/generic/renderg.cpp?ds=sidebyside diff --git a/src/generic/renderg.cpp b/src/generic/renderg.cpp index 016d2a32c1..0601a60f38 100644 --- a/src/generic/renderg.cpp +++ b/src/generic/renderg.cpp @@ -6,7 +6,7 @@ // Created: 20.07.2003 // RCS-ID: $Id$ // Copyright: (c) 2003 Vadim Zeitlin -// License: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -67,6 +67,8 @@ public: virtual int GetHeaderButtonHeight(wxWindow *win); + virtual int GetHeaderButtonMargin(wxWindow *win); + virtual void DrawTreeItemButton(wxWindow *win, wxDC& dc, const wxRect& rect, @@ -183,10 +185,7 @@ wxRendererNative& wxRendererNative::GetGeneric() void wxRendererGeneric::Cleanup() { - if (sm_rendererGeneric) - delete sm_rendererGeneric; - - sm_rendererGeneric = NULL; + wxDELETE(sm_rendererGeneric); } wxRendererGeneric* wxRendererGeneric::sm_rendererGeneric = NULL; @@ -282,7 +281,7 @@ wxRendererGeneric::DrawHeaderButtonContents(wxWindow *win, // native hot-tracking line (on XP) const int penwidth = 3; int y = rect.y + rect.height + 1 - penwidth; - wxColour c = (params && params->m_selectionColour.Ok()) ? + wxColour c = (params && params->m_selectionColour.IsOk()) ? params->m_selectionColour : wxColour(0x66, 0x66, 0x66); wxPen pen(c, penwidth); pen.SetCap(wxCAP_BUTT); @@ -323,7 +322,7 @@ wxRendererGeneric::DrawHeaderButtonContents(wxWindow *win, triPt[2].y = ar.height; } - wxColour c = (params && params->m_arrowColour.Ok()) ? + wxColour c = (params && params->m_arrowColour.IsOk()) ? params->m_arrowColour : wxSystemSettings::GetColour(wxSYS_COLOUR_3DSHADOW); wxDCPenChanger setPen(dc, c); @@ -337,7 +336,7 @@ wxRendererGeneric::DrawHeaderButtonContents(wxWindow *win, int bmpWidth = 0; // draw the bitmap if there is one - if ( params && params->m_labelBitmap.Ok() ) + if ( params && params->m_labelBitmap.IsOk() ) { int w = params->m_labelBitmap.GetWidth(); int h = params->m_labelBitmap.GetHeight(); @@ -380,9 +379,9 @@ wxRendererGeneric::DrawHeaderButtonContents(wxWindow *win, const int margin = 5; // number of pixels to reserve on either side of the label labelWidth += 2*margin; - wxFont font = params->m_labelFont.Ok() ? + wxFont font = params->m_labelFont.IsOk() ? params->m_labelFont : win->GetFont(); - wxColour clr = params->m_labelColour.Ok() ? + wxColour clr = params->m_labelColour.IsOk() ? params->m_labelColour : win->GetForegroundColour(); wxString label( params->m_labelText ); @@ -399,6 +398,7 @@ wxRendererGeneric::DrawHeaderButtonContents(wxWindow *win, // truncate and add an ellipsis (...) if the text is too wide. const int availWidth = rect.width - labelWidth; +#if wxUSE_CONTROLS if ( tw > availWidth ) { label = wxControl::Ellipsize(label, @@ -409,6 +409,7 @@ wxRendererGeneric::DrawHeaderButtonContents(wxWindow *win, tw = dc.GetTextExtent(label).x; } else // enough space, we can respect alignment +#endif // wxUSE_CONTROLS { switch (params->m_labelAlignment) { @@ -448,6 +449,11 @@ int wxRendererGeneric::GetHeaderButtonHeight(wxWindow *win) return h + d + 2 * HEADER_OFFSET_Y + EXTRA_HEIGHT; } +int wxRendererGeneric::GetHeaderButtonMargin(wxWindow *WXUNUSED(win)) +{ + return 5; +} + // draw the plus or minus sign void