Class ComponentPropsDocumentModel
- java.lang.Object
-
- com.inductiveautomation.ignition.client.jsonedit.DocumentModel
-
- com.inductiveautomation.perspective.designer.workspace.propertyeditor.ComponentPropsDocumentModel
-
public class ComponentPropsDocumentModel extends DocumentModel
Document model that knows how to write values back to the underlying property tree
-
-
Field Summary
Fields Modifier and Type Field Description PropertyType
scope
-
Fields inherited from class com.inductiveautomation.ignition.client.jsonedit.DocumentModel
change, root, schema, VALIDATION_RESULTS
-
-
Constructor Summary
Constructors Constructor Description ComponentPropsDocumentModel(DesignAdapter editor, ComponentSelection details, PropertyType scope, JsonSchema schema)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
applyUpdates(com.inductiveautomation.ignition.common.gson.JsonObject o)
This gets called from the javascript bridge when properties of the selected component change.protected com.inductiveautomation.ignition.common.gson.JsonElement
encodeValueAsJson(DocumentNode node)
java.util.Set<BindingConfig>
findBindingsOnChildren(java.lang.String parentPath)
java.util.Optional<PropertyConfig>
findPropConfig(NodeEditor editor)
java.util.Optional<PropertyConfig>
findPropConfig(java.lang.String path)
BindingConfig
getBinding(java.lang.String path)
PropertyConfigCollection
getPropertyConfigCollection()
PropertyType
getScope()
ComponentSelection
getSelection()
protected void
initValidators()
Override to customize JSON "validator" strategy.boolean
isKeyEditable(DocumentNode node)
boolean
isValueEditable(DocumentNode node)
protected void
onNodeChanged(java.beans.PropertyChangeEvent event)
Whenever any document node fires a property change, this method will be invoked.-
Methods inherited from class com.inductiveautomation.ignition.client.jsonedit.DocumentModel
addNodeChangeListener, addPropertyChangeListener, addPropertyChangeListener, addValidator, dfs, fromDocument, fromGson, getAsJsonTree, getRoot, getSchema, getValidationResults, removeNodeChangeListener, removePropertyChangeListener, removePropertyChangeListener, toJson
-
-
-
-
Field Detail
-
scope
public final PropertyType scope
-
-
Constructor Detail
-
ComponentPropsDocumentModel
public ComponentPropsDocumentModel(DesignAdapter editor, ComponentSelection details, PropertyType scope, JsonSchema schema)
-
-
Method Detail
-
encodeValueAsJson
protected com.inductiveautomation.ignition.common.gson.JsonElement encodeValueAsJson(DocumentNode node)
- Overrides:
encodeValueAsJson
in classDocumentModel
-
getSelection
public ComponentSelection getSelection()
-
getScope
public PropertyType getScope()
-
initValidators
protected void initValidators()
Description copied from class:DocumentModel
Override to customize JSON "validator" strategy. Default behavior adds a schema validator, if a schema exists, and warns about duplicate or bad quality keys.- Overrides:
initValidators
in classDocumentModel
-
applyUpdates
public void applyUpdates(com.inductiveautomation.ignition.common.gson.JsonObject o)
This gets called from the javascript bridge when properties of the selected component change.
-
getBinding
@Nullable public BindingConfig getBinding(java.lang.String path)
-
findPropConfig
public java.util.Optional<PropertyConfig> findPropConfig(NodeEditor editor)
-
getPropertyConfigCollection
public PropertyConfigCollection getPropertyConfigCollection()
-
findPropConfig
public java.util.Optional<PropertyConfig> findPropConfig(java.lang.String path)
-
findBindingsOnChildren
public java.util.Set<BindingConfig> findBindingsOnChildren(java.lang.String parentPath)
-
isKeyEditable
public boolean isKeyEditable(DocumentNode node)
- Overrides:
isKeyEditable
in classDocumentModel
-
isValueEditable
public boolean isValueEditable(DocumentNode node)
- Overrides:
isValueEditable
in classDocumentModel
-
onNodeChanged
protected void onNodeChanged(java.beans.PropertyChangeEvent event)
Whenever any document node fires a property change, this method will be invoked. This is how the component props document model reflects changes made by the user back into the javascript PropertyTree- Overrides:
onNodeChanged
in classDocumentModel
-
-