@Target(value={TYPE,METHOD,PACKAGE}) @Retention(value=SOURCE) public static @interface ProjectCustomizer.CompositeCategoryProvider.Registration
category()
can be omitted for a top-level panel;
if specified, the panel is placed in the named subcategory.
categoryLabel()
should not be specified.
The annotation must be placed on a class or factory method implementing ProjectCustomizer.CompositeCategoryProvider
.
category()
must be specified; the last path component is the
folder being defined, and any previous components are parent folders.
categoryLabel()
must be specified.
The annotation must be placed on some package declaration (in package-info.java
).
Self
).
category()
and categoryLabel()
must be specified as for #2,
but the annotation must be on a provider implementation as for #1.
category()
of a #1 can
match the category()
of a #2 or #3, and the category()
of a #2 or #3
preceding the last /
can match the category()
of another #2 or #3.
Multiple registrations may be made in one place using ProjectCustomizer.CompositeCategoryProvider.Registrations
.
Modifier and Type | Required Element and Description |
---|---|
String |
projectType
Project type to associate with, such as
org-netbeans-modules-java-j2seproject . |
Modifier and Type | Optional Element and Description |
---|---|
String |
category
Category folder (perhaps multiple components separated by
/ )
in which to place this panel or which is the name of this panel folder. |
String |
categoryLabel
Display name when defining a category folder.
|
int |
position
Position of this panel or subfolder within its folder.
|
public abstract String projectType
org-netbeans-modules-java-j2seproject
.
The folderPath
passed to ProjectCustomizer.createCustomizerDialog(String,Lookup,String,ActionListener,HelpCtx)
should be Projects/<projectType>/Customizer
.public abstract String category
/
)
in which to place this panel or which is the name of this panel folder.public abstract String categoryLabel
pkg.of.Bundle#key_name
syntax.