From 2a26b86c4cc90abdcc9cd46e69fd1684e949449b Mon Sep 17 00:00:00 2001 From: zeljko Date: Sun, 22 May 2011 09:21:39 +0000 Subject: [PATCH] Gtk2: fixed crash under 64bit when changing orientation of trackbar. git-svn-id: trunk@30847 - --- lcl/interfaces/gtk2/gtk2wscomctrls.pp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lcl/interfaces/gtk2/gtk2wscomctrls.pp b/lcl/interfaces/gtk2/gtk2wscomctrls.pp index 3e592488b5..f3fa4f531a 100644 --- a/lcl/interfaces/gtk2/gtk2wscomctrls.pp +++ b/lcl/interfaces/gtk2/gtk2wscomctrls.pp @@ -217,6 +217,7 @@ type class procedure ApplyChanges(const ATrackBar: TCustomTrackBar); override; class function GetPosition(const ATrackBar: TCustomTrackBar): integer; override; class procedure SetPosition(const ATrackBar: TCustomTrackBar; const NewPosition: integer); override; + class procedure SetOrientation(const ATrackBar: TCustomTrackBar; const AOrientation: TTrackBarOrientation); override; end; { TGtk2WSCustomTreeView } @@ -376,6 +377,19 @@ begin Dec(WidgetInfo^.ChangeLock); end; +class procedure TGtk2WSTrackBar.SetOrientation( + const ATrackBar: TCustomTrackBar; const AOrientation: TTrackBarOrientation); +begin + if not WSCheckHandleAllocated(ATrackBar, 'SetOrientation') then + Exit; + ATrackBar.Hide; + try + RecreateWnd(ATrackBar); + finally + ATrackBar.Show; + end; +end; + { TGtk2WSProgressBar } class procedure TGtk2WSProgressBar.UpdateProgressBarText(const AProgressBar: TCustomProgressBar);