[lazarus] Jumping window bug

Mattias Gaertner nc-gaertnma at netcologne.de
Mon Mar 18 03:46:45 EST 2002


On Mon, 18 Mar 2002 08:24:13 +0100
Michal Bukovjan <bukovjan at mbox.dkm.cz> wrote:

> This must have been my update.
> Where did you fix it? I will look at that...

Several places:
- replaced the simple TWinControl.FIsResizing flag with 
    FBoundsRealized: TRect;
    FBoundsLockCount: integer;
    procedure BeginUpdateBounds;
    procedure EndUpdateBounds;
    property BoundsLockCount: integer
  The FBoundsRealized stores the Bounds sent from the lcl to the interface and back.
  This way, no message is sent twice or is sent back. 
  Also, this give the user the ability to lock the bounds, so that resizing can be 
  programmed easily without flickering.
- In order to distinguish what LM_Size/Move message comes from the interface and what is 
  performed by the lcl/application, I used the flag in the messages and added WMSize 
  and WMMove overrides to TWinControl. 
- Also prevented TControl.ChangedBounds to send size/move messages during loading.


Mattias






More information about the Lazarus mailing list