You've already forked lazarus-ccr
TGradTabControl: Fixed Hide Close-Button on MouseLeave
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@905 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -16,7 +16,7 @@
|
|||||||
<VersionInfo>
|
<VersionInfo>
|
||||||
<UseVersionInfo Value="True"/>
|
<UseVersionInfo Value="True"/>
|
||||||
<AutoIncrementBuild Value="True"/>
|
<AutoIncrementBuild Value="True"/>
|
||||||
<CurrentBuildNr Value="1161"/>
|
<CurrentBuildNr Value="1166"/>
|
||||||
<ProjectVersion Value="0.0.0.0"/>
|
<ProjectVersion Value="0.0.0.0"/>
|
||||||
</VersionInfo>
|
</VersionInfo>
|
||||||
<PublishOptions>
|
<PublishOptions>
|
||||||
|
@ -54,6 +54,7 @@ type
|
|||||||
procedure GetContentRect(var TheRect: TRect); override;
|
procedure GetContentRect(var TheRect: TRect); override;
|
||||||
procedure SetBaseColor(const Value: TColor); override;
|
procedure SetBaseColor(const Value: TColor); override;
|
||||||
procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
|
procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
|
||||||
|
procedure CloseButtonLeave(Sender: TObject);
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
@ -534,6 +535,7 @@ begin
|
|||||||
FCloseButton.Left:=1;
|
FCloseButton.Left:=1;
|
||||||
FCloseButton.Top:=1;
|
FCloseButton.Top:=1;
|
||||||
FCloseButton.Caption:='';
|
FCloseButton.Caption:='';
|
||||||
|
FCloseButton.OnMouseLeave:=@CloseButtonLeave;
|
||||||
|
|
||||||
FShowCloseButton:=false;
|
FShowCloseButton:=false;
|
||||||
FShowCloseButtonOnMouseOver:=false;
|
FShowCloseButtonOnMouseOver:=false;
|
||||||
@ -548,6 +550,15 @@ begin
|
|||||||
inherited Destroy;
|
inherited Destroy;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TGradTabPageButton.CloseButtonLeave(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if not FShowCloseButton then Exit;
|
||||||
|
if not FShowCloseButtonOnMouseOver then Exit;
|
||||||
|
|
||||||
|
// Hide Close Button Fix
|
||||||
|
FCloseButton.Visible:=false;
|
||||||
|
end;
|
||||||
|
|
||||||
{-------------------------------------------------------------------------------
|
{-------------------------------------------------------------------------------
|
||||||
TGradTabPageButton AlignCloseButton
|
TGradTabPageButton AlignCloseButton
|
||||||
------------------------------------------------------------------------------}
|
------------------------------------------------------------------------------}
|
||||||
@ -750,6 +761,7 @@ begin
|
|||||||
CloseBtnRect.Right:=FCloseButton.Left+FCloseButton.Width;
|
CloseBtnRect.Right:=FCloseButton.Left+FCloseButton.Width;
|
||||||
CloseBtnRect.Bottom:=FCloseButton.Top+FCloseButton.Height;
|
CloseBtnRect.Bottom:=FCloseButton.Top+FCloseButton.Height;
|
||||||
|
|
||||||
|
// Shows the Close Button
|
||||||
FCloseButton.Visible:=PtInRect(CloseBtnRect, Point(X,Y));
|
FCloseButton.Visible:=PtInRect(CloseBtnRect, Point(X,Y));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user