public class ConfigurableEP<T extends UnnamedConfigurable> extends AbstractExtensionPointBean
Configurable
Modifier and Type | Class and Description |
---|---|
protected static class |
ConfigurableEP.ObjectProducer |
Modifier and Type | Field and Description |
---|---|
java.lang.String |
bundle
This attribute specifies the resource bundle that contains the specified
key . |
java.util.List<ConfigurableEP<?>> |
children |
java.lang.String |
childrenEPName
This attribute specifies a name of the extension point of
ConfigurableEP type that will be used to calculate children. |
java.lang.String |
displayName
This attribute specifies the setting name visible to users.
|
boolean |
dynamic
This attribute states that a custom configurable component implements the
Configurable.Composite interface
and its children are dynamically calculated by calling the Configurable.Composite.getConfigurables() method. |
java.lang.String |
groupId
This attribute specifies a top-level group, which the configurable component belongs to.
|
int |
groupWeight
This attribute specifies the weight of a configurable component within a group or a parent configurable component.
|
java.lang.String |
id
This attribute specifies the
unique identifier of the configurable component. |
java.lang.String |
implementationClass
|
java.lang.String |
instanceClass
This attribute specifies a qualified name of a custom implementation of this interface.
|
java.lang.String |
key
This attribute specifies the resource key in the specified
bundle . |
boolean |
nonDefaultProject
This attribute is applicable to the
projectConfigurable extension only. |
java.lang.String |
parentId
This attribute is used to create a hierarchy of settings.
|
java.lang.String |
providerClass
This attribute can be used instead of the
instance attribute. |
java.lang.String |
treeRendererClass |
myPluginDescriptor
Modifier | Constructor and Description |
---|---|
|
ConfigurableEP() |
protected |
ConfigurableEP(ComponentManager componentManager) |
protected |
ConfigurableEP(PicoContainer picoContainer,
Project project)
Deprecated.
|
|
ConfigurableEP(Project project)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canCreateConfigurable() |
T |
createConfigurable() |
protected ConfigurableEP.ObjectProducer |
createProducer() |
ConfigurableTreeRenderer |
createTreeRenderer() |
java.util.ResourceBundle |
findBundle() |
java.util.List<ConfigurableEP<?>> |
getChildren() |
java.lang.Class<?> |
getConfigurableType()
Returns the type of configurable to create or
null ,
if it cannot be determined. |
java.lang.String |
getDisplayName() |
Project |
getProject() |
boolean |
isAvailable() |
java.lang.String |
toString() |
findClass, findClass, findClassNoExceptions, findExtensionClass, getLoaderForClass, getPluginDescriptor, getPluginId, instantiate, instantiate, instantiate, instantiateClass, setPluginDescriptor
public java.lang.String displayName
key
-bundle
.
If the display name is not set, a configurable component will be instantiated to retrieve its name dynamically.
This causes a loading of plugin classes and increases the delay before showing the settings dialog.
It is highly recommended specifying the display name in XML to improve UI responsiveness.public java.lang.String key
bundle
.
This is another way to specify the display name
.public java.lang.String bundle
key
.
This is another way to specify the display name
.public java.util.List<ConfigurableEP<?>> children
public java.lang.String childrenEPName
ConfigurableEP
type that will be used to calculate children.dynamic
public boolean dynamic
Configurable.Composite
interface
and its children are dynamically calculated by calling the Configurable.Composite.getConfigurables()
method.
It is needed to improve performance, because we do not want to load any additional classes during the building a setting tree.public java.lang.String parentId
groupId
public java.lang.String id
unique identifier
of the configurable component.
It is also recommended specifying the identifier in XML to improve UI responsiveness.public java.lang.String groupId
groupId="root"
groupId="appearance"
groupId="editor"
groupId="project"
groupId="build"
groupId="build.tools"
groupId="language"
groupId="tools"
groupId="other"
parentId
attribute, which has precedence.
Currently, it is possible to specify a group identifier in the parentId
attribute.public int groupWeight
0
. If one child in a group or a parent configurable component has non-zero weight,
all children will be sorted descending by their weight. And if the weights are equal,
the components will be sorted ascending by their display name.public boolean nonDefaultProject
projectConfigurable
extension only.
If it is set to true
, the corresponding project settings will be shown for a real project only,
not for the template project
,
which provides default settings for all the new projects.@Deprecated public java.lang.String implementationClass
public java.lang.String instanceClass
<extensions defaultExtensionNs="com.intellij">
<projectConfigurable instance="fully.qualified.class.name"/>
</extensions>
provider
public java.lang.String providerClass
instance
attribute.
It specifies a qualified name of a custom implementation of the ConfigurableProvider
interface,
which provides another way to create a configurable component:
<extensions defaultExtensionNs="com.intellij">
<projectConfigurable provider="fully.qualified.class.name"/>
</extensions>
instance
public java.lang.String treeRendererClass
public ConfigurableEP()
protected ConfigurableEP(ComponentManager componentManager)
@Deprecated protected ConfigurableEP(PicoContainer picoContainer, Project project)
ConfigurableEP(ComponentManager)
@Deprecated public ConfigurableEP(Project project)
ConfigurableEP(ComponentManager)
public java.lang.String getDisplayName()
public java.util.ResourceBundle findBundle()
null
public java.util.List<ConfigurableEP<?>> getChildren()
public boolean isAvailable()
protected ConfigurableEP.ObjectProducer createProducer()
public T createConfigurable()
public ConfigurableTreeRenderer createTreeRenderer()
public Project getProject()
public java.lang.String toString()
toString
in class java.lang.Object
public boolean canCreateConfigurable()
public java.lang.Class<?> getConfigurableType()
null
,
if it cannot be determined.null