From 1b4651028a315ed881858165675667fdaef58d6c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 10 Jul 2001 14:03:49 +0000 Subject: [PATCH] respect wxBU_EXACTFIT git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/univ/themes/gtk.cpp | 17 ++++++++++------- src/univ/themes/win32.cpp | 24 ++++++++++++------------ 2 files changed, 22 insertions(+), 19 deletions(-) diff --git a/src/univ/themes/gtk.cpp b/src/univ/themes/gtk.cpp index 785866b58e..fe2695813a 100644 --- a/src/univ/themes/gtk.cpp +++ b/src/univ/themes/gtk.cpp @@ -2282,14 +2282,17 @@ void wxGTKRenderer::AdjustSize(wxSize *size, const wxWindow *window) { if ( wxDynamicCast(window, wxButton) ) { - // TODO: this is ad hoc... - size->x += 3*window->GetCharWidth(); - wxCoord minBtnHeight = 18; - if ( size->y < minBtnHeight ) - size->y = minBtnHeight; + if ( !(window->GetWindowStyle() & wxBU_EXACTFIT) ) + { + // TODO: this is ad hoc... + size->x += 3*window->GetCharWidth(); + wxCoord minBtnHeight = 18; + if ( size->y < minBtnHeight ) + size->y = minBtnHeight; - // button border width - size->y += 4; + // button border width + size->y += 4; + } } else if ( wxDynamicCast(window, wxScrollBar) ) { diff --git a/src/univ/themes/win32.cpp b/src/univ/themes/win32.cpp index 037c9cd2cc..716bcc0ec9 100644 --- a/src/univ/themes/win32.cpp +++ b/src/univ/themes/win32.cpp @@ -255,6 +255,7 @@ public: const wxMenuGeometryInfo& geomInfo); #endif virtual void GetComboBitmaps(wxBitmap *bmpNormal, + wxBitmap *bmpFocus, wxBitmap *bmpPressed, wxBitmap *bmpDisabled); @@ -2759,6 +2760,7 @@ wxWin32Renderer::GetMenuGeometry(wxWindow *WXUNUSED(win), // ---------------------------------------------------------------------------- void wxWin32Renderer::GetComboBitmaps(wxBitmap *bmpNormal, + wxBitmap *bmpFocus, wxBitmap *bmpPressed, wxBitmap *bmpDisabled) { @@ -3008,19 +3010,17 @@ void wxWin32Renderer::AdjustSize(wxSize *size, const wxWindow *window) #if wxUSE_BUTTON if ( wxDynamicCast(window, wxButton) ) { - // TODO - size->x += 3*window->GetCharWidth(); -#if 0 // do allow creating small buttons if wanted - wxSize sizeDef = wxButton::GetDefaultSize(); - if ( size->x < sizeDef.x ) - size->x = sizeDef.x; -#endif // 0 + if ( !(window->GetWindowStyle() & wxBU_EXACTFIT) ) + { + // TODO: don't harcode all this + size->x += 3*window->GetCharWidth(); - wxCoord heightBtn = (11*(window->GetCharHeight() + 8))/10; - if ( size->y < heightBtn - 8 ) - size->y = heightBtn; - else - size->y += 9; + wxCoord heightBtn = (11*(window->GetCharHeight() + 8))/10; + if ( size->y < heightBtn - 8 ) + size->y = heightBtn; + else + size->y += 9; + } // no border width adjustments for buttons return;