mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-12 13:17:18 +02:00
project groups: added ide commands
git-svn-id: trunk@54383 -
This commit is contained in:
parent
8ea54156de
commit
2037baa360
@ -235,6 +235,10 @@ msgstr ""
|
|||||||
msgid "Reload"
|
msgid "Reload"
|
||||||
msgstr "Neu laden"
|
msgstr "Neu laden"
|
||||||
|
|
||||||
|
#: projectgroupstrconst.lisprojectgroups
|
||||||
|
msgid "Project Groups"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
||||||
msgid "Save As ..."
|
msgid "Save As ..."
|
||||||
msgstr "Speichern unter ..."
|
msgstr "Speichern unter ..."
|
||||||
|
@ -234,6 +234,10 @@ msgstr ""
|
|||||||
msgid "Reload"
|
msgid "Reload"
|
||||||
msgstr "Recharger"
|
msgstr "Recharger"
|
||||||
|
|
||||||
|
#: projectgroupstrconst.lisprojectgroups
|
||||||
|
msgid "Project Groups"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
||||||
msgid "Save As ..."
|
msgid "Save As ..."
|
||||||
msgstr "Enregistrer sous..."
|
msgstr "Enregistrer sous..."
|
||||||
|
@ -234,6 +234,10 @@ msgstr ""
|
|||||||
msgid "Reload"
|
msgid "Reload"
|
||||||
msgstr "Újratöltés"
|
msgstr "Újratöltés"
|
||||||
|
|
||||||
|
#: projectgroupstrconst.lisprojectgroups
|
||||||
|
msgid "Project Groups"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
||||||
msgid "Save As ..."
|
msgid "Save As ..."
|
||||||
msgstr "Mentés másként ..."
|
msgstr "Mentés másként ..."
|
||||||
|
@ -224,6 +224,10 @@ msgstr ""
|
|||||||
msgid "Reload"
|
msgid "Reload"
|
||||||
msgstr "Ricarica"
|
msgstr "Ricarica"
|
||||||
|
|
||||||
|
#: projectgroupstrconst.lisprojectgroups
|
||||||
|
msgid "Project Groups"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
||||||
msgid "Save As ..."
|
msgid "Save As ..."
|
||||||
msgstr "Salva come ..."
|
msgstr "Salva come ..."
|
||||||
|
@ -219,6 +219,10 @@ msgstr ""
|
|||||||
msgid "Reload"
|
msgid "Reload"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: projectgroupstrconst.lisprojectgroups
|
||||||
|
msgid "Project Groups"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
||||||
msgid "Save As ..."
|
msgid "Save As ..."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -234,6 +234,10 @@ msgstr ""
|
|||||||
msgid "Reload"
|
msgid "Reload"
|
||||||
msgstr "Перезагрузить"
|
msgstr "Перезагрузить"
|
||||||
|
|
||||||
|
#: projectgroupstrconst.lisprojectgroups
|
||||||
|
msgid "Project Groups"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
#: projectgroupstrconst.lisprojectgroupsaveascaption
|
||||||
msgid "Save As ..."
|
msgid "Save As ..."
|
||||||
msgstr "Сохранить как ..."
|
msgstr "Сохранить как ..."
|
||||||
|
@ -210,35 +210,44 @@ var
|
|||||||
|
|
||||||
IDEProjectGroupManager: TIDEProjectGroupManager;
|
IDEProjectGroupManager: TIDEProjectGroupManager;
|
||||||
|
|
||||||
ProjectGroupMenuRoot: TIDEMenuSection = nil;
|
ProjectGroupEditorMenuRoot: TIDEMenuSection = nil;
|
||||||
PGEditMenuSectionFiles, // e.g. sort files, clean up files
|
PGEditMenuSectionFiles, // e.g. sort files, clean up files
|
||||||
PGEditMenuSectionAddRemove, // e.g. add unit, add dependency
|
PGEditMenuSectionAddRemove, // e.g. add unit, add dependency
|
||||||
PGEditMenuSectionCompile, // e.g. build clean, create Makefile
|
PGEditMenuSectionCompile, // e.g. build clean, create Makefile
|
||||||
PGEditMenuSectionUse, // Target up/down
|
PGEditMenuSectionUse, // Target up/down
|
||||||
PGEditMenuSectionMisc: TIDEMenuSection; // e.g. options
|
PGEditMenuSectionMisc: TIDEMenuSection; // e.g. options
|
||||||
|
PGOpenRecentSubMenu: TIDEMenuSection;
|
||||||
|
|
||||||
|
const
|
||||||
|
ProjectGroupCmdCategoryName = 'ProjectGroups';
|
||||||
var
|
var
|
||||||
cmdOpenProjectGroup,
|
PGCmdCategory: TIDECommandCategory;
|
||||||
cmdSaveProjectGroup,
|
|
||||||
cmdSaveProjectGroupAs,
|
|
||||||
cmdCreateProjectGroup,
|
|
||||||
|
|
||||||
cmdTargetAdd,
|
// IDE main bar menu items
|
||||||
cmdTargetRemove,
|
CmdOpenProjectGroup: TIDECommand;
|
||||||
cmdTargetEarlier,
|
MnuCmdOpenProjectGroup: TIDEMenuCommand;
|
||||||
cmdTargetActivate,
|
CmdSaveProjectGroup: TIDECommand;
|
||||||
cmdTargetLater,
|
MnuCmdSaveProjectGroup: TIDEMenuCommand;
|
||||||
cmdTargetCompile,
|
CmdSaveProjectGroupAs: TIDECommand;
|
||||||
cmdTargetCompileClean,
|
MnuCmdSaveProjectGroupAs: TIDEMenuCommand;
|
||||||
cmdTargetCompileFromHere,
|
CmdNewProjectGroup: TIDECommand;
|
||||||
cmdTargetInstall,
|
MnuCmdNewProjectGroup: TIDEMenuCommand;
|
||||||
cmdTargetOpen,
|
|
||||||
cmdTargetRun,
|
|
||||||
cmdTargetProperties,
|
|
||||||
cmdTargetUninstall,
|
|
||||||
cmdTargetCopyFilename: TIDEMenuCommand;
|
|
||||||
|
|
||||||
OpenRecentProjectGroupSubMenu: TIDEMenuSection;
|
// editor menu items
|
||||||
|
MnuCmdTargetAdd,
|
||||||
|
MnuCmdTargetRemove,
|
||||||
|
MnuCmdTargetEarlier,
|
||||||
|
MnuCmdTargetActivate,
|
||||||
|
MnuCmdTargetLater,
|
||||||
|
MnuCmdTargetCompile,
|
||||||
|
MnuCmdTargetCompileClean,
|
||||||
|
MnuCmdTargetCompileFromHere,
|
||||||
|
MnuCmdTargetInstall,
|
||||||
|
MnuCmdTargetOpen,
|
||||||
|
MnuCmdTargetRun,
|
||||||
|
MnuCmdTargetProperties,
|
||||||
|
MnuCmdTargetUninstall,
|
||||||
|
MnuCmdTargetCopyFilename: TIDEMenuCommand;
|
||||||
|
|
||||||
function LoadXML(aFilename: string; Quiet: boolean): TXMLConfig;
|
function LoadXML(aFilename: string; Quiet: boolean): TXMLConfig;
|
||||||
function CreateXML(aFilename: string; Quiet: boolean): TXMLConfig;
|
function CreateXML(aFilename: string; Quiet: boolean): TXMLConfig;
|
||||||
@ -470,17 +479,17 @@ begin
|
|||||||
i:=0;
|
i:=0;
|
||||||
while i<Options.RecentProjectGroups.Count do begin
|
while i<Options.RecentProjectGroups.Count do begin
|
||||||
aFilename:=Options.RecentProjectGroups[i];
|
aFilename:=Options.RecentProjectGroups[i];
|
||||||
if i<OpenRecentProjectGroupSubMenu.Count then begin
|
if i<PGOpenRecentSubMenu.Count then begin
|
||||||
Item:=OpenRecentProjectGroupSubMenu[i];
|
Item:=PGOpenRecentSubMenu[i];
|
||||||
Item.Caption:=aFilename;
|
Item.Caption:=aFilename;
|
||||||
end
|
end
|
||||||
else begin
|
else begin
|
||||||
Item:=RegisterIDEMenuCommand(OpenRecentProjectGroupSubMenu,'OpenRecentProjectGroup'+IntToStr(i),aFilename,@DoOpenRecentClick);
|
Item:=RegisterIDEMenuCommand(PGOpenRecentSubMenu,'OpenRecentProjectGroup'+IntToStr(i),aFilename,@DoOpenRecentClick);
|
||||||
end;
|
end;
|
||||||
inc(i);
|
inc(i);
|
||||||
end;
|
end;
|
||||||
while i<OpenRecentProjectGroupSubMenu.Count do
|
while i<PGOpenRecentSubMenu.Count do
|
||||||
OpenRecentProjectGroupSubMenu[i].Free;
|
PGOpenRecentSubMenu[i].Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDEProjectGroupManager.DoNewClick(Sender: TObject);
|
procedure TIDEProjectGroupManager.DoNewClick(Sender: TObject);
|
||||||
@ -492,7 +501,7 @@ begin
|
|||||||
Exit;
|
Exit;
|
||||||
FreeAndNil(FProjectGroup);
|
FreeAndNil(FProjectGroup);
|
||||||
FProjectGroup:=TIDEProjectGroup.Create(nil);
|
FProjectGroup:=TIDEProjectGroup.Create(nil);
|
||||||
cmdSaveProjectGroupAs.Enabled:=true;
|
MnuCmdSaveProjectGroupAs.Enabled:=true;
|
||||||
|
|
||||||
// add current project
|
// add current project
|
||||||
AProject:=LazarusIDE.ActiveProject;
|
AProject:=LazarusIDE.ActiveProject;
|
||||||
@ -592,7 +601,7 @@ begin
|
|||||||
FProjectGroup.LoadFromFile(AOptions);
|
FProjectGroup.LoadFromFile(AOptions);
|
||||||
if not (pgloSkipDialog in AOptions) then
|
if not (pgloSkipDialog in AOptions) then
|
||||||
ShowProjectGroupEditor;
|
ShowProjectGroupEditor;
|
||||||
cmdSaveProjectGroupAs.Enabled:=true;
|
MnuCmdSaveProjectGroupAs.Enabled:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDEProjectGroupManager.SaveProjectGroup;
|
procedure TIDEProjectGroupManager.SaveProjectGroup;
|
||||||
|
@ -376,7 +376,7 @@ procedure TProjectGroupEditorForm.AProjectGroupSaveUpdate(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
(Sender as TAction).Enabled:=(FProjectGroup<>nil)
|
(Sender as TAction).Enabled:=(FProjectGroup<>nil)
|
||||||
and (FProjectGroup.Modified or (FProjectGroup.FileName=''));
|
and (FProjectGroup.Modified or (FProjectGroup.FileName=''));
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdSaveProjectGroup);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdSaveProjectGroup);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetEarlierExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetEarlierExecute(Sender: TObject);
|
||||||
@ -411,7 +411,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
(Sender as TAction).Enabled:=I>0;
|
(Sender as TAction).Enabled:=I>0;
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetEarlier);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetEarlier);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetLaterExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetLaterExecute(Sender: TObject);
|
||||||
@ -447,7 +447,7 @@ begin
|
|||||||
I:=PG.IndexOfTarget(T.Target);
|
I:=PG.IndexOfTarget(T.Target);
|
||||||
end;
|
end;
|
||||||
(Sender as TAction).Enabled:=(PG<>nil) and (I+1<PG.TargetCount);
|
(Sender as TAction).Enabled:=(PG<>nil) and (I+1<PG.TargetCount);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetLater);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetLater);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetUninstallExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetUninstallExecute(Sender: TObject);
|
||||||
@ -458,7 +458,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetUninstallUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetUninstallUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taUninstall,Sender as TAction);
|
AllowPerform(taUninstall,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetUninstall);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetUninstall);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.FormCloseQuery(Sender: TObject;
|
procedure TProjectGroupEditorForm.FormCloseQuery(Sender: TObject;
|
||||||
@ -500,16 +500,16 @@ begin
|
|||||||
if ProjectGroupEditorForm=nil then
|
if ProjectGroupEditorForm=nil then
|
||||||
ProjectGroupEditorForm:=Self;
|
ProjectGroupEditorForm:=Self;
|
||||||
PGEditMenuSectionMisc.MenuItem:=PopupMenuMore.Items;
|
PGEditMenuSectionMisc.MenuItem:=PopupMenuMore.Items;
|
||||||
SetItem(cmdTargetAdd,@AProjectGroupAddExistingExecute);
|
SetItem(MnuCmdTargetAdd,@AProjectGroupAddExistingExecute);
|
||||||
SetItem(cmdTargetRemove,@AProjectGroupDeleteExecute);
|
SetItem(MnuCmdTargetRemove,@AProjectGroupDeleteExecute);
|
||||||
SetItem(cmdTargetCompile,@ATargetCompileExecute);
|
SetItem(MnuCmdTargetCompile,@ATargetCompileExecute);
|
||||||
SetItem(cmdTargetCompileClean,@ATargetCompileCleanExecute);
|
SetItem(MnuCmdTargetCompileClean,@ATargetCompileCleanExecute);
|
||||||
SetItem(cmdTargetCompileFromHere,@ATargetCompileFromHereExecute);
|
SetItem(MnuCmdTargetCompileFromHere,@ATargetCompileFromHereExecute);
|
||||||
SetItem(cmdTargetInstall,@ATargetInstallExecute);
|
SetItem(MnuCmdTargetInstall,@ATargetInstallExecute);
|
||||||
SetItem(cmdTargetUnInstall,@ATargetUnInstallExecute);
|
SetItem(MnuCmdTargetUninstall,@ATargetUnInstallExecute);
|
||||||
SetItem(cmdTargetLater,@ATargetLaterExecute);
|
SetItem(MnuCmdTargetLater,@ATargetLaterExecute);
|
||||||
SetItem(cmdTargetEarlier,@ATargetEarlierExecute);
|
SetItem(MnuCmdTargetEarlier,@ATargetEarlierExecute);
|
||||||
SetItem(cmdTargetCopyFilename,@ATargetCopyFilenameExecute);
|
SetItem(MnuCmdTargetCopyFilename,@ATargetCopyFilenameExecute);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.FormDestroy(Sender: TObject);
|
procedure TProjectGroupEditorForm.FormDestroy(Sender: TObject);
|
||||||
@ -782,7 +782,7 @@ Var
|
|||||||
begin
|
begin
|
||||||
T:=SelectedTarget;
|
T:=SelectedTarget;
|
||||||
(Sender as TAction).Enabled:=Assigned(T) and Not T.Active;
|
(Sender as TAction).Enabled:=Assigned(T) and Not T.Active;
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetActivate);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetActivate);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetActivateExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetActivateExecute(Sender: TObject);
|
||||||
@ -817,7 +817,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.AProjectGroupSaveAsUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.AProjectGroupSaveAsUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
(Sender as TAction).Enabled:=(FProjectGroup<>nil);
|
(Sender as TAction).Enabled:=(FProjectGroup<>nil);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdSaveProjectGroupAs);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdSaveProjectGroupAs);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetCompileCleanExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetCompileCleanExecute(Sender: TObject);
|
||||||
@ -828,7 +828,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetCompileCleanUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetCompileCleanUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taCompileClean,Sender as TAction);
|
AllowPerform(taCompileClean,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetCompileClean);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetCompileClean);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TProjectGroupEditorForm.AllowPerform(ATargetAction: TPGTargetAction; AAction: TAction = Nil): Boolean;
|
function TProjectGroupEditorForm.AllowPerform(ATargetAction: TPGTargetAction; AAction: TAction = Nil): Boolean;
|
||||||
@ -887,13 +887,13 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetCompileFromHereUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetCompileFromHereUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taCompileFromHere,Sender as TAction);
|
AllowPerform(taCompileFromHere,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetCompile);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetCompile);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetCompileUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetCompileUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taCompile,Sender as TAction);
|
AllowPerform(taCompile,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetCompile);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetCompile);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.AProjectGroupDeleteExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.AProjectGroupDeleteExecute(Sender: TObject);
|
||||||
@ -911,7 +911,7 @@ Var
|
|||||||
begin
|
begin
|
||||||
T:=SelectedTarget;
|
T:=SelectedTarget;
|
||||||
(Sender as TAction).Enabled:=(T<>nil) and (T<>ProjectGroup.CompileTarget) and Not T.Removed;
|
(Sender as TAction).Enabled:=(T<>nil) and (T<>ProjectGroup.CompileTarget) and Not T.Removed;
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetRemove);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetRemove);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetCopyFilenameExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetCopyFilenameExecute(Sender: TObject);
|
||||||
@ -937,7 +937,7 @@ begin
|
|||||||
ND:=SelectedNodeData;
|
ND:=SelectedNodeData;
|
||||||
(Sender as TAction).Enabled:=(ND<>nil)
|
(Sender as TAction).Enabled:=(ND<>nil)
|
||||||
and ((ND.Target<>nil) or (ND.NodeType in [ntFile]));
|
and ((ND.Target<>nil) or (ND.NodeType in [ntFile]));
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetCopyFilename);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetCopyFilename);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetInstallExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetInstallExecute(Sender: TObject);
|
||||||
@ -948,7 +948,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetInstallUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetInstallUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taInstall,Sender as TAction);
|
AllowPerform(taInstall,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetInstall);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetInstall);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetOpenExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetOpenExecute(Sender: TObject);
|
||||||
@ -959,7 +959,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetOpenUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetOpenUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taOpen,Sender as TAction);
|
AllowPerform(taOpen,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetOpen);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetOpen);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetPropertiesExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetPropertiesExecute(Sender: TObject);
|
||||||
@ -970,7 +970,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetPropertiesUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetPropertiesUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taSettings,Sender as Taction);
|
AllowPerform(taSettings,Sender as Taction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetProperties);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetProperties);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.ATargetRunExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetRunExecute(Sender: TObject);
|
||||||
@ -981,7 +981,7 @@ end;
|
|||||||
procedure TProjectGroupEditorForm.ATargetRunUpdate(Sender: TObject);
|
procedure TProjectGroupEditorForm.ATargetRunUpdate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
AllowPerform(taRun,Sender as TAction);
|
AllowPerform(taRun,Sender as TAction);
|
||||||
UpdateIDEMenuCommandFromAction(Sender,cmdTargetRun);
|
UpdateIDEMenuCommandFromAction(Sender,MnuCmdTargetRun);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TProjectGroupEditorForm.AProjectGroupSaveAsExecute(Sender: TObject);
|
procedure TProjectGroupEditorForm.AProjectGroupSaveAsExecute(Sender: TObject);
|
||||||
|
@ -28,6 +28,7 @@ Resourcestring
|
|||||||
lisTargetAdd = 'Add target';
|
lisTargetAdd = 'Add target';
|
||||||
lisTargetRemove = 'Remove target';
|
lisTargetRemove = 'Remove target';
|
||||||
lisTargetCompile = 'Compile';
|
lisTargetCompile = 'Compile';
|
||||||
|
lisProjectGroups = 'Project Groups';
|
||||||
lisTargetCompileClean = 'Compile clean';
|
lisTargetCompileClean = 'Compile clean';
|
||||||
lisTargetCompileFromHere = 'Compile from here';
|
lisTargetCompileFromHere = 'Compile from here';
|
||||||
lisTargetInstall = 'Install';
|
lisTargetInstall = 'Install';
|
||||||
|
@ -5,10 +5,10 @@ unit RegProjectGroup;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, ProjectGroupIntf, MenuIntf,
|
Classes, SysUtils, ProjectGroupIntf, MenuIntf, IDECommands,
|
||||||
ProjectGroupStrConst, ProjectGroup, ProjectGroupEditor;
|
ProjectGroupStrConst, ProjectGroup, ProjectGroupEditor;
|
||||||
|
|
||||||
procedure RegisterStandardProjectGroupMenuItems;
|
procedure RegisterProjectGroupEditorMenuItems;
|
||||||
procedure Register;
|
procedure Register;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
@ -16,43 +16,51 @@ implementation
|
|||||||
const
|
const
|
||||||
ProjectGroupEditorMenuRootName = 'ProjectGroupEditorMenu';
|
ProjectGroupEditorMenuRootName = 'ProjectGroupEditorMenu';
|
||||||
|
|
||||||
procedure RegisterStandardProjectGroupMenuItems;
|
procedure RegisterProjectGroupEditorMenuItems;
|
||||||
var
|
|
||||||
Section,Root : TIDEMenuSection;
|
|
||||||
begin
|
|
||||||
Root:=RegisterIDEMenuRoot(ProjectGroupEditorMenuRootName);
|
|
||||||
ProjectGroupMenuRoot:=Root;
|
|
||||||
PGEditMenuSectionFiles:=RegisterIDEMenuSection(Root,'File');
|
|
||||||
|
|
||||||
Section:=RegisterIDEMenuSection(Root,'Compile');
|
procedure RegisterMenuCmd(out MenuCmd: TIDEMenuCommand;
|
||||||
PGEditMenuSectionCompile:=Section;
|
Section: TIDEMenuSection; const Name, Caption: string);
|
||||||
cmdTargetCompile:=RegisterIDEMenuCommand(Section,'TargetCompile',lisTargetCompile);
|
begin
|
||||||
cmdTargetCompileClean:=RegisterIDEMenuCommand(Section,'TargetCompileClean',lisTargetCompileClean);
|
MenuCmd:=RegisterIDEMenuCommand(Section,Name,Caption);
|
||||||
cmdTargetCompileFromHere:=RegisterIDEMenuCommand(Section,'TargetCompileFromHere',lisTargetCompileFromHere);
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
MnuRoot, MnuSection: TIDEMenuSection;
|
||||||
|
begin
|
||||||
|
MnuRoot:=RegisterIDEMenuRoot(ProjectGroupEditorMenuRootName);
|
||||||
|
ProjectGroupEditorMenuRoot:=MnuRoot;
|
||||||
|
|
||||||
|
PGEditMenuSectionFiles:=RegisterIDEMenuSection(MnuRoot,'File');
|
||||||
|
|
||||||
|
MnuSection:=RegisterIDEMenuSection(MnuRoot,'Compile');
|
||||||
|
PGEditMenuSectionCompile:=MnuSection;
|
||||||
|
RegisterMenuCmd(MnuCmdTargetCompile,MnuSection,'TargetCompile',lisTargetCompile);
|
||||||
|
RegisterMenuCmd(MnuCmdTargetCompileClean,MnuSection,'TargetCompileClean',lisTargetCompileClean);
|
||||||
|
RegisterMenuCmd(MnuCmdTargetCompileFromHere,MnuSection,'TargetCompileFromHere',lisTargetCompileFromHere);
|
||||||
// ToDo: clean ... -> clean up dialog
|
// ToDo: clean ... -> clean up dialog
|
||||||
// ToDo: set build mode of all projects
|
// ToDo: set build mode of all projects
|
||||||
|
|
||||||
Section:=RegisterIDEMenuSection(Root,'AddRemove');
|
MnuSection:=RegisterIDEMenuSection(MnuRoot,'AddRemove');
|
||||||
PGEditMenuSectionAddRemove:=Section;
|
PGEditMenuSectionAddRemove:=MnuSection;
|
||||||
cmdTargetAdd:=RegisterIDEMenuCommand(Section,'TargetAdd',lisTargetAdd);
|
RegisterMenuCmd(MnuCmdTargetAdd,MnuSection,'TargetAdd',lisTargetAdd);
|
||||||
cmdTargetRemove:=RegisterIDEMenuCommand(Section,'TargetRemove',lisTargetRemove);
|
RegisterMenuCmd(MnuCmdTargetRemove,MnuSection,'TargetRemove',lisTargetRemove);
|
||||||
// ToDo: re-add
|
// ToDo: re-add
|
||||||
|
|
||||||
Section:=RegisterIDEMenuSection(Root,'Use');
|
MnuSection:=RegisterIDEMenuSection(MnuRoot,'Use');
|
||||||
PGEditMenuSectionUse:=Section;
|
PGEditMenuSectionUse:=MnuSection;
|
||||||
cmdTargetInstall:=RegisterIDEMenuCommand(Section,'TargetInstall',lisTargetInstall);// ToDo
|
RegisterMenuCmd(MnuCmdTargetInstall,MnuSection,'TargetInstall',lisTargetInstall);// ToDo
|
||||||
cmdTargetUninstall:=RegisterIDEMenuCommand(Section,'TargetUninstall',lisTargetUninstall);// ToDo
|
RegisterMenuCmd(MnuCmdTargetUninstall,MnuSection,'TargetUninstall',lisTargetUninstall);// ToDo
|
||||||
cmdTargetEarlier:=RegisterIDEMenuCommand(Section,'TargetEarlier',lisTargetEarlier);// ToDo: Ctrl+Up
|
RegisterMenuCmd(MnuCmdTargetEarlier,MnuSection,'TargetEarlier',lisTargetEarlier);// ToDo: Ctrl+Up
|
||||||
cmdTargetLater:=RegisterIDEMenuCommand(Section,'TargetLater',lisTargetLater);// ToDo: Ctrl+Down
|
RegisterMenuCmd(MnuCmdTargetLater,MnuSection,'TargetLater',lisTargetLater);// ToDo: Ctrl+Down
|
||||||
cmdTargetActivate:=RegisterIDEMenuCommand(Section,'TargetActivate',lisTargetActivate);
|
RegisterMenuCmd(MnuCmdTargetActivate,MnuSection,'TargetActivate',lisTargetActivate);
|
||||||
cmdTargetOpen:=RegisterIDEMenuCommand(Section,'TargetOpen',lisTargetOpen);
|
RegisterMenuCmd(MnuCmdTargetOpen,MnuSection,'TargetOpen',lisTargetOpen);
|
||||||
cmdTargetRun:=RegisterIDEMenuCommand(Section,'TargetRun',lisTargetRun);
|
RegisterMenuCmd(MnuCmdTargetRun,MnuSection,'TargetRun',lisTargetRun);
|
||||||
cmdTargetProperties:=RegisterIDEMenuCommand(Section,'TargetProperties',lisTargetProperties);
|
RegisterMenuCmd(MnuCmdTargetProperties,MnuSection,'TargetProperties',lisTargetProperties);
|
||||||
|
|
||||||
Section:=RegisterIDEMenuSection(Root,'Misc');
|
MnuSection:=RegisterIDEMenuSection(MnuRoot,'Misc');
|
||||||
PGEditMenuSectionMisc:=Section;
|
PGEditMenuSectionMisc:=MnuSection;
|
||||||
|
|
||||||
cmdTargetCopyFilename:=RegisterIDEMenuCommand(Section,'CopyFilename',lisTargetCopyFilename);
|
RegisterMenuCmd(MnuCmdTargetCopyFilename,MnuSection,'CopyFilename',lisTargetCopyFilename);
|
||||||
// ToDo: View source (project)
|
// ToDo: View source (project)
|
||||||
|
|
||||||
// ToDo: find in files
|
// ToDo: find in files
|
||||||
@ -62,23 +70,35 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure Register;
|
procedure Register;
|
||||||
|
|
||||||
|
procedure RegisterMnuCmd(out Cmd: TIDECommand; out MenuCmd: TIDEMenuCommand;
|
||||||
|
Section: TIDEMenuSection; const Name, Caption: string;
|
||||||
|
const OnExecuteMethod: TNotifyEvent);
|
||||||
|
begin
|
||||||
|
Cmd:=RegisterIDECommand(PGCmdCategory,Name,Caption,OnExecuteMethod);
|
||||||
|
MenuCmd:=RegisterIDEMenuCommand(Section,Name,Caption,nil,nil,Cmd);
|
||||||
|
end;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
RegisterStandardProjectGroupMenuItems;
|
|
||||||
IDEProjectGroupManager:=TIDEProjectGroupManager.Create;
|
IDEProjectGroupManager:=TIDEProjectGroupManager.Create;
|
||||||
IDEProjectGroupManager.Options.LoadSafe;
|
IDEProjectGroupManager.Options.LoadSafe;
|
||||||
|
|
||||||
cmdCreateProjectGroup:=RegisterIDEMenuCommand(itmProjectNewSection,
|
PGCmdCategory:=RegisterIDECommandCategory(nil,ProjectGroupCmdCategoryName,lisProjectGroups);
|
||||||
|
|
||||||
|
RegisterMnuCmd(CmdNewProjectGroup,MnuCmdNewProjectGroup,itmProjectNewSection,
|
||||||
'NewProjectGroup',lisNewProjectGroupMenuC,@IDEProjectGroupManager.DoNewClick);
|
'NewProjectGroup',lisNewProjectGroupMenuC,@IDEProjectGroupManager.DoNewClick);
|
||||||
cmdOpenProjectGroup:=RegisterIDEMenuCommand(itmProjectOpenSection,
|
RegisterMnuCmd(CmdOpenProjectGroup,MnuCmdOpenProjectGroup,itmProjectOpenSection,
|
||||||
'OpenProjectGroup',lisOpenProjectGroup,@IDEProjectGroupManager.DoOpenClick);
|
'OpenProjectGroup',lisOpenProjectGroup,@IDEProjectGroupManager.DoOpenClick);
|
||||||
OpenRecentProjectGroupSubMenu:=RegisterIDESubMenu(itmProjectOpenSection,
|
PGOpenRecentSubMenu:=RegisterIDESubMenu(itmProjectOpenSection,
|
||||||
'OpenRecentProjectGroup',lisOpenRecentProjectGroup);
|
'OpenRecentProjectGroup',lisOpenRecentProjectGroup);
|
||||||
cmdSaveProjectGroup:=RegisterIDEMenuCommand(itmProjectSaveSection,
|
RegisterMnuCmd(CmdSaveProjectGroup,MnuCmdSaveProjectGroup,itmProjectSaveSection,
|
||||||
'SaveProjectGroup',lisSaveProjectGroup,@IDEProjectGroupManager.DoSaveClick);
|
'SaveProjectGroup',lisSaveProjectGroup,@IDEProjectGroupManager.DoSaveClick);
|
||||||
cmdSaveProjectGroup.Enabled:=false;
|
MnuCmdSaveProjectGroup.Enabled:=false;
|
||||||
cmdSaveProjectGroupAs:=RegisterIDEMenuCommand(itmProjectSaveSection,
|
RegisterMnuCmd(CmdSaveProjectGroupAs,MnuCmdSaveProjectGroupAs,itmProjectSaveSection,
|
||||||
'SaveProjectGroupAs',lisSaveProjectGroupAs,@IDEProjectGroupManager.DoSaveAsClick);
|
'SaveProjectGroupAs',lisSaveProjectGroupAs,@IDEProjectGroupManager.DoSaveAsClick);
|
||||||
cmdSaveProjectGroupAs.Enabled:=false;
|
MnuCmdSaveProjectGroupAs.Enabled:=false;
|
||||||
|
|
||||||
|
RegisterProjectGroupEditorMenuItems;
|
||||||
|
|
||||||
IDEProjectGroupManager.UpdateRecentProjectGroupMenu;
|
IDEProjectGroupManager.UpdateRecentProjectGroupMenu;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user