From e8fb5ea3fd6696c632c3f8e1faa562f87c39e6ef Mon Sep 17 00:00:00 2001 From: juha Date: Sat, 5 Jul 2014 10:49:42 +0000 Subject: [PATCH] LCL-GTK2: Take caption of an autosized GroupBox into account when calculating width. Issue #20447, patch from Henry Vermaak git-svn-id: trunk@45786 - --- lcl/interfaces/gtk2/gtk2wsstdctrls.pp | 27 ++------------------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/lcl/interfaces/gtk2/gtk2wsstdctrls.pp b/lcl/interfaces/gtk2/gtk2wsstdctrls.pp index ead0a22290..5a51ff3ed1 100644 --- a/lcl/interfaces/gtk2/gtk2wsstdctrls.pp +++ b/lcl/interfaces/gtk2/gtk2wsstdctrls.pp @@ -2365,32 +2365,9 @@ end; class procedure TGtk2WSCustomGroupBox.GetPreferredSize( const AWinControl: TWinControl; var PreferredWidth, PreferredHeight: integer; WithThemeSpace: Boolean); -var - Widget: PGtkWidget; - border_width: Integer; begin - Widget := PGtkWidget(GetFrameWidget({%H-}PGTKEventBox(AWinControl.Handle))); - - if Assigned(PGtkFrame(Widget)^.label_widget) then - begin - PreferredWidth := gtk_widget_get_xthickness(Widget) * 2 + - gtk_widget_get_xthickness(PGtkFrame(Widget)^.label_widget); - PreferredHeight := Max(gtk_widget_get_ythickness(Widget), - gtk_widget_get_ythickness(PGtkFrame(Widget)^.label_widget)) + - gtk_widget_get_ythickness(Widget); - end else - begin - PreferredWidth := gtk_widget_get_xthickness(Widget) * 2; - PreferredHeight := gtk_widget_get_ythickness(Widget) * 2; - end; - - if WithThemeSpace then - begin - border_width := (PGtkContainer(Widget)^.flag0 and bm_TGtkContainer_border_width) shr - bp_TGtkContainer_border_width; - inc(PreferredWidth, border_width); - inc(PreferredHeight, 2 * border_width); - end; + GetGTKDefaultWidgetSize(AWinControl, PreferredWidth, PreferredHeight, + WithThemeSpace); end; class procedure TGtk2WSCustomGroupBox.SetFont(const AWinControl: TWinControl;