@Target(value={TYPE,METHOD,PACKAGE}) @Retention(value=SOURCE) public @interface TemplateRegistration
WizardDescriptor.InstantiatingIterator
for a custom template;
or on a package to register a plain-file template with no custom behavior.TemplateWizard
,
TemplateRegistrations
,
org.netbeans.spi.project.ui.templates.support
Modifier and Type | Required Element and Description |
---|---|
String |
folder
Subfolder in which to place the template, such as
Other or Project/Standard . |
Modifier and Type | Optional Element and Description |
---|---|
String[] |
category
Optional list of categories interpreted by the project system.
|
String[] |
content
File contents, as resources relative to the package of this declaration.
|
String |
description
Optional but recommended relative resource path to an HTML description of the template.
|
String |
displayName
Localized label for the template.
|
String |
iconBase
Icon to use for the template.
|
String |
id
Special file basename to use rather than inferring one from the declaring element,
when
content() is empty. |
int |
position
Optional position within
folder() . |
boolean |
requireProject
Set to false if the template can be instantiated without a project.
|
String |
scriptEngine
Optional name of a script engine to use when processing file content, such as
freemarker . |
public abstract String folder
Other
or Project/Standard
.public abstract int position
folder()
.public abstract String id
content()
is empty.
Useful for pure templates referenced from PrivilegedTemplates
.public abstract String[] content
Normally only a single file is specified, but for a multifile data object, list the primary entry first.
The file basenames (incl. extension) of the actual template files (as in TemplateWizard.getTemplate()
)
will be taken from the basename of the content resources, though a .template
suffix
may be appended to prevent template resources in a source project from being misinterpreted.
For a "pure" custom iterator with no specified content, the template basename
defaults to the FQN of the class or method defining it but with -
for .
characters,
e.g. pkg-Class-method
, but may be overridden with id()
.
Example usage for a simple, single-file template (with or without custom iterator):
content="resources/empty.php"
For a form template:
content={"Login.java.template", "Login.form.template"}
public abstract String displayName
content()
is specified, in which case it would be defaulted by the data node.
May use the usual #key
syntax.public abstract String iconBase
content()
is specified, in which case it would be defaulted by the data node.public abstract String description
public abstract String scriptEngine
freemarker
.ScriptEngineFactory.getNames()
public abstract String[] category
public abstract boolean requireProject
Built on November 8 2014. | Portions Copyright 1997-2014 Oracle. All rights reserved.