IDE: Make Tab Order dialog modeless and add it to View menu.

git-svn-id: trunk@30324 -
This commit is contained in:
juha 2011-04-16 17:15:29 +00:00
parent 716bb3dc97
commit 1f812b5dd7
10 changed files with 60 additions and 17 deletions

View File

@ -95,6 +95,7 @@ type
FOnActivated: TNotifyEvent;
FOnCloseQuery: TNotifyEvent;
FOnShowObjectInspector: TNotifyEvent;
FOnShowTabOrderEditor: TNotifyEvent;
FOnPersistentDeleted: TOnPersistentDeleted;
FOnGetNonVisualCompIcon: TOnGetNonVisualCompIcon;
FOnGetSelectedComponentClass: TOnGetSelectedComponentClass;
@ -333,6 +334,7 @@ type
property OnViewLFM: TNotifyEvent read FOnViewLFM write FOnViewLFM;
property OnSaveAsXML: TNotifyEvent read FOnSaveAsXML write FOnSaveAsXML;
property OnShowObjectInspector: TNotifyEvent read FOnShowObjectInspector write FOnShowObjectInspector;
property OnShowTabOrderEditor: TNotifyEvent read FOnShowTabOrderEditor write FOnShowTabOrderEditor;
property ShowGrid: boolean read GetShowGrid write SetShowGrid;
property ShowBorderSpacing: boolean read GetShowBorderSpacing write SetShowBorderSpacing;
property ShowEditorHints: boolean read GetShowEditorHints write SetShowEditorHints;
@ -1247,8 +1249,8 @@ end;
procedure TDesigner.DoShowTabOrderEditor;
begin
if ShowTabOrderDialog(FLookupRoot)=mrOk then
Modified;
if Assigned(FOnShowTabOrderEditor) then
FOnShowTabOrderEditor(Self);
end;
procedure TDesigner.DoShowChangeClassDialog;

View File

@ -64,12 +64,15 @@ type
property LookupRoot: TComponent Read FLookupRoot Write SetLookupRoot;
end;
function ShowTabOrderDialog(LookupRoot: TComponent): TModalresult;
//function ShowTabOrderDialog(LookupRoot: TComponent): TModalresult;
var
TabOrderDialog: TTabOrderDialog;
implementation
{$R *.lfm}
{
function ShowTabOrderDialog(LookupRoot: TComponent): TModalresult;
var
TabOrderDialog: TTabOrderDialog;
@ -79,7 +82,7 @@ begin
Result := TabOrderDialog.ShowModal;
TabOrderDialog.Free;
end;
}
{ TTabOrderDialog }
procedure TTabOrderDialog.TabOrderDialogCREATE(Sender: TObject);

View File

@ -96,6 +96,7 @@ type
// extra
nmiwSearchResultsViewName,
nmiwAnchorEditor,
nmiwTabOrderEditor,
nmiwCodeBrowser,
nmiwIssueBrowser,
nmiwJumpHistory
@ -140,6 +141,7 @@ const
// extra
'SearchResults',
'AnchorEditor',
'TabOrderEditor',
'CodeBrowser',
'IssueBrowser',
'JumpHistory'

View File

@ -2084,6 +2084,7 @@ begin
ecViewUnitDependencies : Result:= srkmecViewUnitDependencies;
ecViewUnitInfo : Result:= srkmecViewUnitInfo;
ecViewAnchorEditor : Result:= srkmecViewAnchorEditor;
ecViewTabOrderEditor : Result:= srkmecViewTabOrderEditor;
ecToggleCodeBrowser : Result:= srkmecToggleCodeBrowser;
ecToggleRestrictionBrowser: Result:= srkmecToggleRestrictionBrowser;
ecViewComponents : Result:= srkmecViewComponents;
@ -2753,6 +2754,7 @@ begin
AddDefault(C, 'View Unit Info', lisKMViewUnitInfo, ecViewUnitInfo);
AddDefault(C, 'Toggle between Unit and Form', lisKMToggleBetweenUnitAndForm, ecToggleFormUnit);
AddDefault(C, 'View Anchor Editor', lisMenuViewAnchorEditor, ecViewAnchorEditor);
AddDefault(C, 'View Tab Order Editor', lisMenuViewTabOrderEditor, ecViewTabOrderEditor);
AddDefault(C, 'Toggle view component palette', lisKMToggleViewComponentPalette, ecToggleCompPalette);
AddDefault(C, 'Toggle view IDE speed buttons', lisKMToggleViewIDESpeedButtons, ecToggleIDESpeedBtns);

View File

@ -292,6 +292,7 @@ resourcestring
lisSaveAllMessagesToFile = 'Save all messages to file';
lisMenuViewSearchResults = 'Search Results';
lisMenuViewAnchorEditor = 'Anchor Editor';
lisMenuViewTabOrderEditor = 'Tab Order Editor';
lisKMToggleViewComponentPalette = 'Toggle view component palette';
lisMenuViewComponentPalette = 'Component Palette';
lisMenuViewTodoList = 'ToDo List';
@ -2609,6 +2610,7 @@ resourcestring
srkmecViewUnitDependencies = 'View unit dependencies';
srkmecViewUnitInfo = 'View unit information';
srkmecViewAnchorEditor = 'View anchor editor';
srkmecViewTabOrderEditor = 'View Tab Order editor';
srkmecToggleCodeBrowser = 'View code browser';
srkmecToggleRestrictionBrowser = 'View restriction browser';
srkmecToggleCompPalette = 'View component palette';

View File

@ -89,8 +89,7 @@ uses
// designer
JITForms, ComponentPalette, ComponentList, ComponentReg, FormEditingIntf,
ObjInspExt, Designer, FormEditor, CustomFormEditor,
ControlSelection, AnchorEditor,
MenuEditorForm,
ControlSelection, AnchorEditor, TabOrderDlg, MenuEditorForm,
// LRT stuff
Translations,
// debugger
@ -249,6 +248,7 @@ type
procedure mnuViewSearchResultsClick(Sender: TObject);
procedure mnuToggleFormUnitClicked(Sender: TObject);
procedure mnuViewAnchorEditorClicked(Sender: TObject);
procedure mnuViewTabOrderEditorClicked(Sender: TObject);
procedure mnuViewComponentPaletteClicked(Sender: TObject);
procedure mnuViewIDESpeedButtonsClicked(Sender: TObject);
procedure mnuViewFPCInfoClicked(Sender: TObject);
@ -524,6 +524,7 @@ type
procedure OnDesignerViewLFM(Sender: TObject);
procedure OnDesignerSaveAsXML(Sender: TObject);
procedure OnDesignerShowObjectInspector(Sender: TObject);
procedure OnDesignerShowTabOrderEditor(Sender: TObject);
// control selection
procedure OnControlSelectionChanged(Sender: TObject; ForceUpdate: Boolean);
@ -1073,6 +1074,7 @@ type
procedure UpdateIDEComponentPalette;
procedure ShowDesignerForm(AForm: TCustomForm);
procedure DoViewAnchorEditor(Show: boolean);
procedure DoViewTabOrderEditor(Show: boolean);
procedure DoToggleViewComponentPalette;
procedure DoToggleViewIDESpeedButtons;
@ -2290,6 +2292,8 @@ begin
nil,@CreateIDEWindow,'250','250','+70%','+300');
IDEWindowCreators.Add(NonModalIDEWindowNames[nmiwAnchorEditor],
nil,@CreateIDEWindow,'250','250','','');
IDEWindowCreators.Add(NonModalIDEWindowNames[nmiwTabOrderEditor],
nil,@CreateIDEWindow,'270','270','','');
IDEWindowCreators.Add(NonModalIDEWindowNames[nmiwCodeBrowser],
nil,@CreateIDEWindow,'200','200','+650','+500');
IDEWindowCreators.Add(NonModalIDEWindowNames[nmiwIssueBrowser],
@ -2494,6 +2498,7 @@ begin
itmViewMessage.OnClick := @mnuViewMessagesClick;
itmViewSearchResults.OnClick := @mnuViewSearchResultsClick;
itmViewAnchorEditor.OnClick := @mnuViewAnchorEditorClicked;
itmViewTabOrderEditor.OnClick := @mnuViewTabOrderEditorClicked;
itmViewComponentPalette.OnClick := @mnuViewComponentPaletteClicked;
itmViewIDESpeedButtons.OnClick := @mnuViewIDESpeedButtonsClicked;
@ -2674,6 +2679,11 @@ begin
DoViewAnchorEditor(true);
end;
procedure TMainIDE.mnuViewTabOrderEditorClicked(Sender: TObject);
begin
DoViewTabOrderEditor(true);
end;
procedure TMainIDE.mnuViewComponentPaletteClicked(Sender: TObject);
begin
DoToggleViewComponentPalette;
@ -3671,6 +3681,7 @@ begin
OnViewLFM:=@OnDesignerViewLFM;
OnSaveAsXML:=@OnDesignerSaveAsXML;
OnShowObjectInspector:=@OnDesignerShowObjectInspector;
OnShowTabOrderEditor:=@OnDesignerShowTabOrderEditor;
ShowEditorHints:=EnvironmentOptions.ShowEditorHints;
ShowComponentCaptions := EnvironmentOptions.ShowComponentCaptions;
end;
@ -3724,6 +3735,14 @@ begin
IDEWindowCreators.ShowForm(AnchorDesigner,true);
end;
procedure TMainIDE.DoViewTabOrderEditor(Show: boolean);
begin
if TabOrderDialog=nil then
TabOrderDialog:=TTabOrderDialog.Create(OwningComponent);
if Show then
IDEWindowCreators.ShowForm(TabOrderDialog,true);
end;
procedure TMainIDE.DoToggleViewComponentPalette;
var
ComponentPaletteVisible: boolean;
@ -16487,6 +16506,11 @@ begin
DoBringToFrontFormOrInspector(True);
end;
procedure TMainIDE.OnDesignerShowTabOrderEditor(Sender: TObject);
begin
DoViewTabOrderEditor(True);
end;
Procedure TMainIDE.OnSrcNoteBookAddJumpPoint(ACaretXY: TPoint;
ATopLine: integer; AEditor: TSourceEditor; DeleteForwardHistory: boolean);
{off $DEFINE VerboseJumpHistory}

View File

@ -177,6 +177,7 @@ type
itmViewToggleFormUnit: TIDEMenuCommand;
//itmViewSecondaryWindows: TIDEMenuSection;
itmViewAnchorEditor: TIDEMenuCommand;
itmViewTabOrderEditor: TIDEMenuCommand;
itmViewComponentPalette: TIDEMenuCommand;
itmViewIDESpeedButtons: TIDEMenuCommand;
itmViewMessage: TIDEMenuCommand;

View File

@ -514,10 +514,14 @@ begin
CreateMenuItem(ParentMI,itmViewUnitDependencies,'itmViewUnitDependencies',lisMenuViewUnitDependencies);
CreateMenuItem(ParentMI,itmViewToggleFormUnit,'itmViewToggleFormUnit',lisMenuViewToggleFormUnit, 'menu_view_toggle_form_unit');
CreateMenuSeparatorSection(mnuView,itmViewDesignerWindows,'itmViewDesignerWindows');
ParentMI:=itmViewDesignerWindows;
CreateMenuItem(ParentMI,itmViewAnchorEditor,'itmViewAnchorEditor',lisMenuViewAnchorEditor,'menu_view_anchor_editor');
CreateMenuItem(ParentMI,itmViewTabOrderEditor,'itmViewTabOrderEditor',lisMenuViewTabOrderEditor,'');
CreateMenuSeparatorSection(mnuView,itmViewSecondaryWindows,'itmViewSecondaryWindows');
ParentMI:=itmViewSecondaryWindows;
CreateMenuItem(ParentMI,itmViewSearchResults,'itmViewSearchResults',lisMenuViewSearchResults);
CreateMenuItem(ParentMI,itmViewAnchorEditor,'itmViewAnchorEditor',lisMenuViewAnchorEditor,'menu_view_anchor_editor');
CreateMenuItem(ParentMI,itmViewComponentPalette,'itmViewComponentPalette',lisMenuViewComponentPalette, '', true, EnvironmentOptions.ComponentPaletteVisible);
CreateMenuItem(ParentMI,itmViewIDESpeedButtons,'itmViewIDESpeedButtons',lisMenuViewIDESpeedButtons, '', true, EnvironmentOptions.IDESpeedButtonsVisible);
CreateMenuSubSection(ParentMI,itmViewDebugWindows,'itmViewDebugWindows',lisMenuDebugWindows,'debugger');
@ -896,6 +900,7 @@ begin
itmViewMessage.Command:=GetCommand(ecToggleMessages);
itmViewSearchResults.Command:=GetCommand(ecToggleSearchResults);
itmViewAnchorEditor.Command:=GetCommand(ecViewAnchorEditor);
itmViewTabOrderEditor.Command:=GetCommand(ecViewTabOrderEditor);
itmViewComponentPalette.Command:=GetCommand(ecToggleCompPalette);
itmViewIDESpeedButtons.Command:=GetCommand(ecToggleIDESpeedBtns);
itmJumpHistory.Command:=GetCommand(ecViewJumpHistory);

View File

@ -175,15 +175,16 @@ const
ecToggleCallStack = ecFirstLazarus + 315;
ecToggleSearchResults = ecFirstLazarus + 316;
ecViewAnchorEditor = ecFirstLazarus + 317;
ecToggleCodeBrowser = ecFirstLazarus + 318;
ecToggleCompPalette = ecFirstLazarus + 319;
ecToggleIDESpeedBtns = ecFirstLazarus + 320;
ecViewComponents = ecFirstLazarus + 321;
ecToggleRestrictionBrowser = ecFirstLazarus + 322;
ecViewTodoList = ecFirstLazarus + 323;
ecToggleRegisters = ecFirstLazarus + 324;
ecToggleAssembler = ecFirstLazarus + 325;
ecToggleDebugEvents = ecFirstLazarus + 326;
ecViewTabOrderEditor = ecFirstLazarus + 318;
ecToggleCodeBrowser = ecFirstLazarus + 319;
ecToggleCompPalette = ecFirstLazarus + 320;
ecToggleIDESpeedBtns = ecFirstLazarus + 321;
ecViewComponents = ecFirstLazarus + 322;
ecToggleRestrictionBrowser= ecFirstLazarus + 323;
ecViewTodoList = ecFirstLazarus + 324;
ecToggleRegisters = ecFirstLazarus + 325;
ecToggleAssembler = ecFirstLazarus + 326;
ecToggleDebugEvents = ecFirstLazarus + 327;
// sourcenotebook commands
ecNextEditor = ecFirstLazarus + 330;

View File

@ -314,6 +314,7 @@ var
mnuView: TIDEMenuSection;
itmViewMainWindows: TIDEMenuSection;
itmViewUnitWindows: TIDEMenuSection;
itmViewDesignerWindows: TIDEMenuSection;
itmViewSecondaryWindows: TIDEMenuSection;
itmViewDebugWindows: TIDEMenuSection;
itmViewIDEInternalsWindows: TIDEMenuSection;