Merged revision(s) 48433-48434 #326bf8d567-#326bf8d567, 48439-48440 #f78dd6dbd5-#f78dd6dbd5 from trunk:

Object Inspector: Improve scrolling, reduce flicker. Issue #27667.
........
Object Inspector: Restrict scrolling improvemets to Windows platform. Issue #27667.
........
Object Inspector: Scrolling works without Invalidate and messages, remove them. Issue #27667.
........
Object Inspector: Improve scrolling, reduce flicker using ScrollWindowEx. Issue #27667.
........

git-svn-id: branches/fixes_1_4@48493 -
This commit is contained in:
maxim 2015-03-24 21:46:11 +00:00
parent affbe332ec
commit 412a1218ee

View File

@ -2503,6 +2503,9 @@ end;
procedure TOICustomPropertyGrid.SetTopY(const NewValue:integer);
var
NewTopY: integer;
{$IFDEF WINDOWS}
r: Types.TRect;
{$ENDIF}
begin
NewTopY := TopMax;
if NewValue < NewTopY then
@ -2510,10 +2513,14 @@ begin
if NewTopY < 0 then
NewTopY := 0;
if FTopY<>NewTopY then begin
{$IFDEF WINDOWS}
r := ClientRect;
if not ScrollWindowEx(Handle,0,FTopY-NewTopY,@r,@r,0,nil, SW_INVALIDATE+SW_SCROLLCHILDREN) then
{$ENDIF}
Invalidate;
FTopY:=NewTopY;
UpdateScrollBar;
AlignEditComponents;
Invalidate;
end;
end;