IDE: Hide component palette pages dropdown, when app is deactivated

git-svn-id: trunk@61181 -
This commit is contained in:
martin 2019-05-08 19:53:57 +00:00
parent 8152045409
commit f15f245d9f

View File

@ -58,6 +58,7 @@ type
fGroups: TStringList; // Objects have group TreeNodes fGroups: TStringList; // Objects have group TreeNodes
fLastCloseUp: QWord; fLastCloseUp: QWord;
fLastCanShowCheck: Boolean; fLastCanShowCheck: Boolean;
procedure AppDeactivated(Sender: TObject);
procedure FindGroups; procedure FindGroups;
procedure BuildTreeItem(aPageCapt: string); procedure BuildTreeItem(aPageCapt: string);
procedure BuildList; procedure BuildList;
@ -68,6 +69,7 @@ type
procedure DoClose(var CloseAction: TCloseAction); override; procedure DoClose(var CloseAction: TCloseAction); override;
public public
PositionForControl: TControl; PositionForControl: TControl;
destructor Destroy; override;
procedure FixBounds; procedure FixBounds;
procedure CanShowCheck; procedure CanShowCheck;
property LastCanShowCheck: Boolean read fLastCanShowCheck; property LastCanShowCheck: Boolean read fLastCanShowCheck;
@ -97,6 +99,7 @@ end;
procedure TDlgCompPagesPopup.FormShow(Sender: TObject); procedure TDlgCompPagesPopup.FormShow(Sender: TObject);
begin begin
BuildList; BuildList;
Application.AddOnDeactivateHandler(@AppDeactivated);
end; end;
procedure TDlgCompPagesPopup.FormDeactivate(Sender: TObject); procedure TDlgCompPagesPopup.FormDeactivate(Sender: TObject);
@ -121,11 +124,18 @@ end;
procedure TDlgCompPagesPopup.DoClose(var CloseAction: TCloseAction); procedure TDlgCompPagesPopup.DoClose(var CloseAction: TCloseAction);
begin begin
inherited DoClose(CloseAction); inherited DoClose(CloseAction);
Application.RemoveOnDeactivateHandler(@AppDeactivated);
if CloseAction = caHide then if CloseAction = caHide then
fLastCloseUp := GetTickCount64; fLastCloseUp := GetTickCount64;
end; end;
destructor TDlgCompPagesPopup.Destroy;
begin
Application.RemoveOnDeactivateHandler(@AppDeactivated);
inherited Destroy;
end;
procedure TDlgCompPagesPopup.DoCreate; procedure TDlgCompPagesPopup.DoCreate;
begin begin
inherited DoCreate; inherited DoCreate;
@ -243,6 +253,11 @@ begin
fGroups.Delete(i); fGroups.Delete(i);
end; end;
procedure TDlgCompPagesPopup.AppDeactivated(Sender: TObject);
begin
Close;
end;
procedure TDlgCompPagesPopup.BuildTreeItem(aPageCapt: string); procedure TDlgCompPagesPopup.BuildTreeItem(aPageCapt: string);
// Create items in tree, grouping as needed. // Create items in tree, grouping as needed.
var var