From 23249c0b486d22bba3904a0dbb4dbc9c86dc8435 Mon Sep 17 00:00:00 2001 From: zeljko Date: Wed, 8 Jun 2011 07:00:02 +0000 Subject: [PATCH] LCL: overrided TControl.Update in TGraphicControl, so it calls Update() only for TGraphicControl client rect, not whole parent handle. git-svn-id: trunk@31132 - --- lcl/controls.pp | 2 +- lcl/include/graphiccontrol.inc | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/lcl/controls.pp b/lcl/controls.pp index 06a75a9aa6..75be812c95 100644 --- a/lcl/controls.pp +++ b/lcl/controls.pp @@ -2021,7 +2021,7 @@ type procedure Paint; virtual; procedure DoOnChangeBounds; override; procedure DoOnParentHandleDestruction; override; - + procedure Update; override; property OnPaint: TNotifyEvent read FOnPaint write FOnPaint; public constructor Create(AOwner: TComponent); override; diff --git a/lcl/include/graphiccontrol.inc b/lcl/include/graphiccontrol.inc index 3910baa99e..5207b2be4e 100644 --- a/lcl/include/graphiccontrol.inc +++ b/lcl/include/graphiccontrol.inc @@ -111,5 +111,17 @@ begin TControlCanvas(Canvas).FreeHandle; end; +procedure TGraphicControl.Update; +var + R: TRect; +begin + if Assigned(Parent) and Parent.HandleAllocated and Parent.Visible then + begin + R := ClientRect; + OffsetRect(R, Left, Top); + LCLIntf.InvalidateRect(Parent.Handle, @R, True); + end; +end; + // included by controls.pp