X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9a83f860948059b0273b5cc6d9e43fadad3ebfca..12bb29f5432174ecbd65549bda832d70d34a98ae:/src/univ/themes/gtk.cpp diff --git a/src/univ/themes/gtk.cpp b/src/univ/themes/gtk.cpp index 89d9fd33f1..40083c9747 100644 --- a/src/univ/themes/gtk.cpp +++ b/src/univ/themes/gtk.cpp @@ -57,9 +57,7 @@ #include "wx/notebook.h" #include "wx/spinbutt.h" #include "wx/artprov.h" -#ifdef wxUSE_TOGGLEBTN #include "wx/tglbtn.h" -#endif // wxUSE_TOGGLEBTN #include "wx/univ/stdrend.h" #include "wx/univ/inpcons.h" @@ -328,7 +326,7 @@ protected: wxCoord y1, wxCoord y2); // draw the radio button bitmap for the given state - void DrawRadioBitmap(wxDC& dc, const wxRect& rect, int flags); + void DrawRadioButtonBitmap(wxDC& dc, const wxRect& rect, int flags); // common part of DrawMenuItem() and DrawMenuBarItem() void DoDrawMenuItem(wxDC& dc, @@ -646,7 +644,7 @@ wxColour wxGTKColourScheme::GetBackground(wxWindow *win) const if ( !win->ShouldInheritColours() ) { // doesn't depend on the state - if ( !col.Ok() ) + if ( !col.IsOk() ) { col = Get(WINDOW); } @@ -657,7 +655,7 @@ wxColour wxGTKColourScheme::GetBackground(wxWindow *win) const // the colour set by the user should be used for the normal state // and for the states for which we don't have any specific colours - if ( !col.Ok() || (flags != 0) ) + if ( !col.IsOk() || (flags != 0) ) { #if wxUSE_SCROLLBAR if ( wxDynamicCast(win, wxScrollBar) ) @@ -997,9 +995,9 @@ void wxGTKRenderer::DrawCheckBitmap(wxDC& dc, const wxRect& rectTotal) dc.DrawRectangle(rect); } -void wxGTKRenderer::DrawRadioBitmap(wxDC& dc, - const wxRect& rect, - int flags) +void wxGTKRenderer::DrawRadioButtonBitmap(wxDC& dc, + const wxRect& rect, + int flags) { wxCoord x = rect.x, y = rect.y, @@ -1069,7 +1067,7 @@ void wxGTKRenderer::DrawDownZag(wxDC& dc, wxBitmap wxGTKRenderer::GetCheckBitmap(int flags) { - if ( !m_bitmapsCheckbox[0][0].Ok() ) + if ( !m_bitmapsCheckbox[0][0].IsOk() ) { // init the bitmaps once only wxRect rect; @@ -1126,7 +1124,7 @@ wxBitmap wxGTKRenderer::GetRadioBitmap(int flags) GetIndicatorsFromFlags(flags, state, status); wxBitmap& bmp = m_bitmapsRadiobtn[state][status]; - if ( !bmp.Ok() ) + if ( !bmp.IsOk() ) { const wxSize size = GetRadioBitmapSize(); @@ -1134,7 +1132,7 @@ wxBitmap wxGTKRenderer::GetRadioBitmap(int flags) bmp.Create(size.x, size.y); dc.SelectObject(bmp); - DrawRadioBitmap(dc, size, flags); + DrawRadioButtonBitmap(dc, size, flags); } return bmp; @@ -1142,7 +1140,7 @@ wxBitmap wxGTKRenderer::GetRadioBitmap(int flags) wxBitmap wxGTKRenderer::GetLineWrapBitmap() const { - if ( !m_bmpLineWrap.Ok() ) + if ( !m_bmpLineWrap.IsOk() ) { // the line wrap bitmap as used by GTK+ #define line_wrap_width 6 @@ -1153,7 +1151,7 @@ wxBitmap wxGTKRenderer::GetLineWrapBitmap() const }; wxBitmap bmpLineWrap(line_wrap_bits, line_wrap_width, line_wrap_height); - if ( !bmpLineWrap.Ok() ) + if ( !bmpLineWrap.IsOk() ) { wxFAIL_MSG( wxT("Failed to create line wrap XBM") ); } @@ -1176,7 +1174,7 @@ void wxGTKRenderer::DrawToolBarButton(wxDC& dc, int tbarStyle) { // we don't draw the separators at all - if ( !label.empty() || bitmap.Ok() ) + if ( !label.empty() || bitmap.IsOk() ) { wxRect rect = rectOrig; rect.Deflate(BORDER_THICKNESS); @@ -1260,7 +1258,7 @@ void wxGTKRenderer::DrawLineWrapMark(wxDC& dc, const wxRect& rect) dc.DrawBitmap(bmpLineWrap, rect.x, rect.y + (rect.height - bmpLineWrap.GetHeight())/2); - if ( colFgOld.Ok() ) + if ( colFgOld.IsOk() ) { // restore old colour dc.SetTextForeground(colFgOld); @@ -1677,12 +1675,12 @@ void wxGTKRenderer::DoDrawMenuItem(wxDC& dc, if ( geometryInfo ) { wxBitmap bmp = bitmap; - if ( !bmp.Ok() && (flags & wxCONTROL_CHECKABLE) ) + if ( !bmp.IsOk() && (flags & wxCONTROL_CHECKABLE) ) { bmp = GetCheckBitmap(flags); } - if ( bmp.Ok() ) + if ( bmp.IsOk() ) { rect.SetRight(geometryInfo->GetLabelOffset()); wxControlRenderer::DrawBitmap(dc, bmp, rect); @@ -1796,7 +1794,7 @@ wxMenuGeometryInfo *wxGTKRenderer::GetMenuGeometry(wxWindow *win, } const wxBitmap& bmp = item->GetBitmap(); - if ( bmp.Ok() ) + if ( bmp.IsOk() ) { wxCoord widthBmp = bmp.GetWidth(); if ( widthBmp > widthBmpMax ) @@ -1878,7 +1876,7 @@ void wxGTKRenderer::GetComboBitmaps(wxBitmap *bmpNormal, wxBitmap *bmpPressed, wxBitmap *bmpDisabled) { - if ( !m_bitmapsCombo[ComboState_Normal].Ok() ) + if ( !m_bitmapsCombo[ComboState_Normal].IsOk() ) { InitComboBitmaps(); } @@ -2097,7 +2095,7 @@ void wxGTKRenderer::DrawArrow(wxDC& dc, case wxUP: dc.DrawLine(ptArrow[Point_Second], ptArrow[Point_First]); dc.DrawPoint(ptArrow[Point_First]); - if ( penShadow[3].Ok() ) + if ( penShadow[3].IsOk() ) { dc.SetPen(penShadow[3]); dc.DrawLine(ptArrow[Point_First].x + 1, ptArrow[Point_First].y, @@ -2109,7 +2107,7 @@ void wxGTKRenderer::DrawArrow(wxDC& dc, dc.DrawPoint(ptArrow[Point_Third]); dc.DrawLine(ptArrow[Point_Third].x - 2, ptArrow[Point_Third].y, ptArrow[Point_First].x + 1, ptArrow[Point_First].y); - if ( penShadow[2].Ok() ) + if ( penShadow[2].IsOk() ) { dc.SetPen(penShadow[2]); dc.DrawLine(ptArrow[Point_Third].x - 1, ptArrow[Point_Third].y, @@ -2123,7 +2121,7 @@ void wxGTKRenderer::DrawArrow(wxDC& dc, dc.DrawLine(ptArrow[Point_First], ptArrow[Point_Second]); dc.DrawLine(ptArrow[Point_First].x + 2, ptArrow[Point_First].y, ptArrow[Point_Third].x - 1, ptArrow[Point_Third].y); - if ( penShadow[2].Ok() ) + if ( penShadow[2].IsOk() ) { dc.SetPen(penShadow[2]); dc.DrawLine(ptArrow[Point_Second].x, ptArrow[Point_Second].y - 1, @@ -2137,7 +2135,7 @@ void wxGTKRenderer::DrawArrow(wxDC& dc, case wxLEFT: dc.DrawLine(ptArrow[Point_Second], ptArrow[Point_First]); dc.DrawPoint(ptArrow[Point_First]); - if ( penShadow[2].Ok() ) + if ( penShadow[2].IsOk() ) { dc.SetPen(penShadow[2]); dc.DrawLine(ptArrow[Point_Third].x - 1, ptArrow[Point_Third].y, @@ -2267,12 +2265,13 @@ void wxGTKRenderer::AdjustSize(wxSize *size, const wxWindow *window) #if wxUSE_SCROLLBAR if ( wxDynamicCast(window, wxScrollBar) ) { - // we only set the width of vert scrollbars and height of the - // horizontal ones - if ( window->GetWindowStyle() & wxSB_HORIZONTAL ) - size->y = m_sizeScrollbarArrow.x; - else - size->x = m_sizeScrollbarArrow.x; + /* + Don't adjust the size for a scrollbar as its DoGetBestClientSize + already has the correct size set. Any size changes here would get + added to the best size, making the scrollbar larger. + Also skip border width adjustments, they don't make sense for us. + */ + return; } else #endif // wxUSE_SCROLLBAR