Interface DesignerBindings
- All Known Implementing Classes:
DesignerBindings.DefaultDesignerBindings
public interface DesignerBindings
Gathers some services to customise how language implementations bind
to the designer.
- Author:
- Clément Fournier
- Since:
- 6.20.0
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic class
An entry for the "additional info" panel.static class
A base implementation forDesignerBindings
.static enum
SeegetIcon(Node)
. -
Method Summary
Modifier and TypeMethodDescriptiongetAdditionalInfo
(Node node) Returns a collection of "additional information" entries pertaining to the given node.Returns a constant describing an icon that the node should bear in the treeview and other relevant places.getMainAttribute
(Node node) Returns the "main" attribute of the given node.Returns an instance ofRelatedNodesSelector
, or null if it should be defaulted to using the old symbol table (ScopedNode
).boolean
Returns true if the children of this node should be displayed in the treeview by default.
-
Method Details
-
getRelatedNodesSelector
RelatedNodesSelector getRelatedNodesSelector()Returns an instance ofRelatedNodesSelector
, or null if it should be defaulted to using the old symbol table (ScopedNode
). That default behaviour is implemented in the designer directly. -
getAdditionalInfo
Returns a collection of "additional information" entries pertaining to the given node. An entry may look like("Type = List<String>", 0)
, or show the result of an XPath function. The information is shown when the node is displayed.Order of the collection is unimportant, it's sorted using
DesignerBindings.AdditionalInfo.getSortKey()
. -
getMainAttribute
Returns the "main" attribute of the given node. The string representation of this attribute (Attribute.getStringValue()
) will be displayed next to the node type in the treeview. For example, for a numeric literal, this could return the attribute(@IntValue, 1)
, for a class declaration, it could return the name of the class (eg(@SimpleName, String)
.If there's no obvious "main" attribute, or if the node is not supported, returns null. If the returned attribute is non-null, but its string value is, the return value is ignored.
Note: the attribute doesn't need to originate from
Node.getXPathAttributesIterator()
, it can be constructed ad-hoc. The name of the attribute should be a valid name for the XPath attribute though.This method is meant to break the designer's dependency on
Node.getImage()
. -
isExpandedByDefaultInTree
Returns true if the children of this node should be displayed in the treeview by default. Returning "true" is the safe default value. -
getIcon
Returns a constant describing an icon that the node should bear in the treeview and other relevant places. Returns null if no icon is applicable.
-