mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-10-30 20:01:31 +01:00
added methods to ideintf for NewItemIntf to register custom categories
git-svn-id: trunk@7425 -
This commit is contained in:
parent
63ebe03976
commit
21a9d058d9
@ -83,6 +83,7 @@ type
|
|||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
procedure Clear; override;
|
procedure Clear; override;
|
||||||
procedure Add(ACategory: TNewIDEItemCategory); override;
|
procedure Add(ACategory: TNewIDEItemCategory); override;
|
||||||
|
Procedure Add(ACategoryName : String); override;
|
||||||
function Count: integer; override;
|
function Count: integer; override;
|
||||||
function IndexOf(const CategoryName: string): integer; override;
|
function IndexOf(const CategoryName: string): integer; override;
|
||||||
function FindByName(const CategoryName: string): TNewIDEItemCategory; override;
|
function FindByName(const CategoryName: string): TNewIDEItemCategory; override;
|
||||||
@ -459,6 +460,21 @@ begin
|
|||||||
FItems.Add(ACategory);
|
FItems.Add(ACategory);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TNewLazIDEItemCategories.Add(ACategoryName : String);
|
||||||
|
|
||||||
|
Var
|
||||||
|
I : integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
I:=IndexOf(ACategoryName);
|
||||||
|
If I<>-1 then
|
||||||
|
begin
|
||||||
|
Items[I].Free;
|
||||||
|
FItems.Delete(I);
|
||||||
|
end;
|
||||||
|
Add(TNewLazIDEItemCategoryFile.Create(ACategoryName));
|
||||||
|
end;
|
||||||
|
|
||||||
function TNewLazIDEItemCategories.Count: integer;
|
function TNewLazIDEItemCategories.Count: integer;
|
||||||
begin
|
begin
|
||||||
Result:=FItems.Count;
|
Result:=FItems.Count;
|
||||||
|
|||||||
@ -67,6 +67,7 @@ type
|
|||||||
public
|
public
|
||||||
procedure Clear; virtual; abstract;
|
procedure Clear; virtual; abstract;
|
||||||
procedure Add(ACategory: TNewIDEItemCategory); virtual; abstract;
|
procedure Add(ACategory: TNewIDEItemCategory); virtual; abstract;
|
||||||
|
Procedure Add(ACategoryName : String); virtual; abstract;
|
||||||
function Count: integer; virtual; abstract;
|
function Count: integer; virtual; abstract;
|
||||||
function IndexOf(const CategoryName: string): integer; virtual; abstract;
|
function IndexOf(const CategoryName: string): integer; virtual; abstract;
|
||||||
function FindByName(const CategoryName: string): TNewIDEItemCategory; virtual; abstract;
|
function FindByName(const CategoryName: string): TNewIDEItemCategory; virtual; abstract;
|
||||||
@ -115,9 +116,17 @@ procedure RegisterNewDialogItem(const Paths: string;
|
|||||||
NewItem: TNewIDEItemTemplate);
|
NewItem: TNewIDEItemTemplate);
|
||||||
procedure UnregisterNewDialogItem(NewItem: TNewIDEItemTemplate);
|
procedure UnregisterNewDialogItem(NewItem: TNewIDEItemTemplate);
|
||||||
|
|
||||||
|
procedure RegisterNewItemCategory(const ACategory: String);
|
||||||
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
|
||||||
|
procedure RegisterNewItemCategory(const ACategory: String);
|
||||||
|
begin
|
||||||
|
NewIdeItems.Add(ACategory);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure RegisterNewDialogItem(const Paths: string;
|
procedure RegisterNewDialogItem(const Paths: string;
|
||||||
NewItem: TNewIDEItemTemplate);
|
NewItem: TNewIDEItemTemplate);
|
||||||
begin
|
begin
|
||||||
|
|||||||
@ -560,12 +560,20 @@ function ProjectFlagsToStr(Flags: TProjectFlags): string;
|
|||||||
|
|
||||||
procedure RegisterProjectFileDescriptor(FileDesc: TProjectFileDescriptor);
|
procedure RegisterProjectFileDescriptor(FileDesc: TProjectFileDescriptor);
|
||||||
procedure RegisterProjectDescriptor(ProjDesc: TProjectDescriptor);
|
procedure RegisterProjectDescriptor(ProjDesc: TProjectDescriptor);
|
||||||
|
procedure RegisterProjectFileDescriptor(FileDesc: TProjectFileDescriptor; ACategory : String);
|
||||||
|
procedure RegisterProjectDescriptor(ProjDesc: TProjectDescriptor; ACategory : String);
|
||||||
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
|
||||||
procedure RegisterProjectFileDescriptor(FileDesc: TProjectFileDescriptor);
|
procedure RegisterProjectFileDescriptor(FileDesc: TProjectFileDescriptor);
|
||||||
|
|
||||||
|
begin
|
||||||
|
RegisterProjectFileDescriptor(FileDesc,FileDescGroupName);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure RegisterProjectFileDescriptor(FileDesc: TProjectFileDescriptor; ACategory : String);
|
||||||
var
|
var
|
||||||
NewItemFile: TNewItemProjectFile;
|
NewItemFile: TNewItemProjectFile;
|
||||||
begin
|
begin
|
||||||
@ -573,11 +581,17 @@ begin
|
|||||||
if FileDesc.VisibleInNewDialog then begin
|
if FileDesc.VisibleInNewDialog then begin
|
||||||
NewItemFile:=TNewItemProjectFile.Create(FileDesc.Name,niifCopy,[niifCopy]);
|
NewItemFile:=TNewItemProjectFile.Create(FileDesc.Name,niifCopy,[niifCopy]);
|
||||||
NewItemFile.Descriptor:=FileDesc;
|
NewItemFile.Descriptor:=FileDesc;
|
||||||
RegisterNewDialogItem(FileDescGroupName,NewItemFile);
|
RegisterNewDialogItem(ACategory,NewItemFile);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure RegisterProjectDescriptor(ProjDesc: TProjectDescriptor);
|
procedure RegisterProjectDescriptor(ProjDesc: TProjectDescriptor);
|
||||||
|
|
||||||
|
begin
|
||||||
|
RegisterProjectDescriptor(ProjDesc,ProjDescGroupName);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure RegisterProjectDescriptor(ProjDesc: TProjectDescriptor; ACategory : String);
|
||||||
var
|
var
|
||||||
NewItemProject: TNewItemProject;
|
NewItemProject: TNewItemProject;
|
||||||
begin
|
begin
|
||||||
@ -585,7 +599,7 @@ begin
|
|||||||
if ProjDesc.VisibleInNewDialog then begin
|
if ProjDesc.VisibleInNewDialog then begin
|
||||||
NewItemProject:=TNewItemProject.Create(ProjDesc.Name,niifCopy,[niifCopy]);
|
NewItemProject:=TNewItemProject.Create(ProjDesc.Name,niifCopy,[niifCopy]);
|
||||||
NewItemProject.Descriptor:=ProjDesc;
|
NewItemProject.Descriptor:=ProjDesc;
|
||||||
RegisterNewDialogItem(ProjDescGroupName,NewItemProject);
|
RegisterNewDialogItem(ACategory,NewItemProject);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user