mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-18 01:09:35 +02:00
MG: fixed mouse coords on scrolling wincontrols
git-svn-id: trunk@3597 -
This commit is contained in:
parent
678e5f14c0
commit
28eaade3c2
lcl
10
lcl/forms.pp
10
lcl/forms.pp
@ -123,6 +123,7 @@ type
|
||||
Protected
|
||||
procedure AlignControls(AControl: TControl; var ARect: TRect); override;
|
||||
procedure CreateWnd; override;
|
||||
function GetChildsRect(Scrolled: boolean): TRect; override;
|
||||
Procedure WMEraseBkgnd(var Message: TLMEraseBkgnd); message LM_ERASEBKGND;
|
||||
procedure WMPaint(var message: TLMPaint); message LM_PAINT;
|
||||
procedure WMSize(var Message: TLMSize); message LM_Size;
|
||||
@ -142,8 +143,10 @@ type
|
||||
property Canvas: TControlCanvas read FCanvas;
|
||||
published
|
||||
property AutoScroll: Boolean read FAutoScroll write SetAutoScroll;
|
||||
property HorzScrollBar: TControlScrollBar read FHorzScrollBar write SetHorzScrollBar stored StoreScrollBars;
|
||||
property VertScrollBar: TControlScrollBar read FVertScrollBar write SetVertScrollBar stored StoreScrollBars;
|
||||
property HorzScrollBar: TControlScrollBar
|
||||
read FHorzScrollBar write SetHorzScrollBar stored StoreScrollBars;
|
||||
property VertScrollBar: TControlScrollBar
|
||||
read FVertScrollBar write SetVertScrollBar stored StoreScrollBars;
|
||||
end;
|
||||
|
||||
TScrollBox = class(TScrollingWinControl)
|
||||
@ -155,7 +158,8 @@ type
|
||||
property AutoSize default True;
|
||||
//property AutoScroll;
|
||||
//property BiDiMode;
|
||||
//property BorderStyle: TBorderStyle read FBorderStyle write SetBorderStyle default bsSingle;
|
||||
//property BorderStyle: TBorderStyle
|
||||
// read FBorderStyle write SetBorderStyle default bsSingle;
|
||||
property Constraints;
|
||||
//property DockSite;
|
||||
property DragCursor;
|
||||
|
@ -335,6 +335,21 @@ begin
|
||||
UpdateScrollBars;
|
||||
end;
|
||||
|
||||
function TScrollingWinControl.GetChildsRect(Scrolled: boolean): TRect;
|
||||
var
|
||||
ScrolledX, ScrolledY: integer;
|
||||
begin
|
||||
Result:=inherited GetChildsRect(Scrolled);
|
||||
if Scrolled then begin
|
||||
ScrolledX:=HorzScrollBar.Position;
|
||||
ScrolledY:=VertScrollBar.Position;
|
||||
dec(Result.Left,ScrolledX);
|
||||
dec(Result.Top,ScrolledY);
|
||||
dec(Result.Right,ScrolledX);
|
||||
dec(Result.Bottom,ScrolledY);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TScrollingWinControl.AlignControls(AControl: TControl; var ARect: TRect);
|
||||
begin
|
||||
HorzScrollBar.AutoCalcRange;
|
||||
|
Loading…
Reference in New Issue
Block a user