LCL: anchordocking: TlazDockForm: fixed invalidate on MouseLeave

git-svn-id: trunk@14090 -
This commit is contained in:
mattias 2008-02-11 14:36:46 +00:00
parent 57ee3d33a0
commit e08cf5abf5

View File

@ -2834,20 +2834,20 @@ var
NewMouseState: TDockHeaderMouseState; NewMouseState: TDockHeaderMouseState;
begin begin
Control := FindHeader(X, Y, Part); Control := FindHeader(X, Y, Part);
FillChar(NewMouseState,SizeOf(NewMouseState),0);
if (Control <> nil) then if (Control <> nil) then
begin begin
ARect := GetTitleRect(Control); ARect := GetTitleRect(Control);
ARect := TDockHeader.GetRectOfPart(ARect, GetTitleOrientation(Control), Part); ARect := TDockHeader.GetRectOfPart(ARect, GetTitleOrientation(Control), Part);
FillChar(NewMouseState,SizeOf(NewMouseState),0);
NewMouseState.Rect := ARect; NewMouseState.Rect := ARect;
NewMouseState.IsMouseDown := (GetKeyState(VK_LBUTTON) and $80) <> 0; NewMouseState.IsMouseDown := (GetKeyState(VK_LBUTTON) and $80) <> 0;
if not CompareMem(@FMouseState, @NewMouseState, SizeOf(NewMouseState)) then end;
begin if not CompareMem(@FMouseState, @NewMouseState, SizeOf(NewMouseState)) then
if not CompareRect(@FMouseState.Rect, @NewMouseState.Rect) then begin
InvalidateRect(Handle, @FMouseState.Rect, False); if not CompareRect(@FMouseState.Rect, @NewMouseState.Rect) then
FMouseState := NewMouseState; InvalidateRect(Handle, @FMouseState.Rect, False);
InvalidateRect(Handle, @NewMouseState.Rect, False); FMouseState := NewMouseState;
end; InvalidateRect(Handle, @NewMouseState.Rect, False);
end; end;
end; end;