You've already forked lazarus-ccr
RxMDI - fix CloseAll
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2790 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -38,6 +38,9 @@ interface
|
||||
uses
|
||||
Classes, SysUtils, LResources, LazarusPackageIntf;
|
||||
|
||||
const
|
||||
RxCtrllPageName = 'RX Controls';
|
||||
|
||||
procedure Register;
|
||||
|
||||
implementation
|
||||
@ -114,106 +117,106 @@ end;
|
||||
{$IFDEF USE_TRxAppIcon}
|
||||
procedure RegisterRxAppIcon;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxAppIcon]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxAppIcon]);
|
||||
end;
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_TRXXPManifest}
|
||||
procedure RegisterRxXPMan;
|
||||
begin
|
||||
RegisterComponents('RX',[TRXXPManifest]);
|
||||
RegisterComponents(RxCtrllPageName,[TRXXPManifest]);
|
||||
end;
|
||||
{$ENDIF}
|
||||
|
||||
procedure RegisterPageMngr;
|
||||
begin
|
||||
RegisterComponents('RX',[TPageManager]);
|
||||
RegisterComponents(RxCtrllPageName,[TPageManager]);
|
||||
end;
|
||||
|
||||
|
||||
procedure RegisterDualList;
|
||||
begin
|
||||
RegisterComponents('RX',[TDualListDialog]);
|
||||
RegisterComponents(RxCtrllPageName,[TDualListDialog]);
|
||||
end;
|
||||
|
||||
procedure RegisterCurrEdit;
|
||||
begin
|
||||
RegisterComponents('RX',[TCurrencyEdit]);
|
||||
RegisterComponents(RxCtrllPageName,[TCurrencyEdit]);
|
||||
end;
|
||||
|
||||
procedure RegisterRXSwitch;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxSwitch]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxSwitch]);
|
||||
end;
|
||||
|
||||
procedure RegisterRXDice;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxDice]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxDice]);
|
||||
end;
|
||||
|
||||
procedure RegisterFolderLister;
|
||||
begin
|
||||
RegisterComponents('RX',[TFolderLister]);
|
||||
RegisterComponents(RxCtrllPageName,[TFolderLister]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxToolBar;
|
||||
begin
|
||||
RegisterComponents('RX',[TToolPanel]);
|
||||
RegisterComponents(RxCtrllPageName,[TToolPanel]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxCtrls;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxLabel, TSecretPanel, TRxSpeedButton, TRxRadioGroup]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxLabel, TSecretPanel, TRxSpeedButton, TRxRadioGroup]);
|
||||
end;
|
||||
|
||||
|
||||
procedure RegisterChartPanel;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxChart]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxChart]);
|
||||
end;
|
||||
|
||||
procedure RegisterAutoPanel;
|
||||
begin
|
||||
RegisterComponents('RX',[TAutoPanel]);
|
||||
RegisterComponents(RxCtrllPageName,[TAutoPanel]);
|
||||
end;
|
||||
|
||||
procedure RegisterPickDate;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxCalendarGrid]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxCalendarGrid]);
|
||||
end;
|
||||
|
||||
procedure RegisterToolEdit;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxDateEdit]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxDateEdit]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxClock;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxClock]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxClock]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxSpin;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxSpinButton, TRxSpinEdit]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxSpinButton, TRxSpinEdit]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxTimeEdit;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxTimeEdit]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxTimeEdit]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxAboutDialog;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxAboutDialog]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxAboutDialog]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxViewsPanel;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxViewsPanel]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxViewsPanel]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxMDI;
|
||||
begin
|
||||
RegisterComponents('RX',[TRxMDICloseButton, TRxMDIPanel, TRxMDITasks]);
|
||||
RegisterComponents(RxCtrllPageName,[TRxMDICloseButton, TRxMDIPanel, TRxMDITasks]);
|
||||
end;
|
||||
|
||||
procedure RegisterRxHistoryNavigator;
|
||||
|
@ -143,6 +143,7 @@ type
|
||||
|
||||
implementation
|
||||
uses LResources, vclutils, rxconst;
|
||||
// LCLProc;
|
||||
|
||||
|
||||
{ TRxMDICloseButton }
|
||||
@ -465,7 +466,16 @@ end;
|
||||
procedure TRxMDITasks.ChildWindowsShowLast;
|
||||
var
|
||||
CC:TControl;
|
||||
i:integer;
|
||||
begin
|
||||
{
|
||||
DebugLn(['FMainPanel.ControlCount = ', FMainPanel.ControlCount]);
|
||||
for i:=0 to FMainPanel.ControlCount-1 do
|
||||
DebugLn(['FMainPanel.Controls[',i,'].Name = ', FMainPanel.Controls[i].Name]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (FMainPanel.ControlCount>1) then
|
||||
begin
|
||||
CC:=FMainPanel.Controls[FMainPanel.ControlCount-2];
|
||||
@ -481,6 +491,8 @@ procedure TRxMDITasks.DoCloseAll(AIgnoreBtn: TRxMDIButton);
|
||||
var
|
||||
i:integer;
|
||||
begin
|
||||
// DebugLn('DoCloseAll');
|
||||
|
||||
for i:=ComponentCount-1 downto 0 do
|
||||
begin
|
||||
if (Components[i] is TRxMDIButton) and (TRxMDIButton(Components[i]) <> AIgnoreBtn) then
|
||||
@ -660,6 +672,7 @@ procedure TRxMDIButton.DoCloseMenu(Sender: TObject);
|
||||
begin
|
||||
if Assigned(FNavForm) then
|
||||
FNavForm.Close;
|
||||
Application.ProcessMessages;
|
||||
end;
|
||||
|
||||
procedure TRxMDIButton.DoCloseAllMenu(Sender: TObject);
|
||||
@ -707,6 +720,7 @@ begin
|
||||
FNavPanel.ChildWindowsShowLast;
|
||||
FNavPanel.ShowHiddenBtnOnResize;
|
||||
CloseAction:=caFree;
|
||||
Owner.RemoveComponent(Self);
|
||||
Free;
|
||||
end;
|
||||
|
||||
|
Reference in New Issue
Block a user