Namespace icm.model.properties.controller.ControllerManager
Registry manager that is used to retrieve the registry for editor controls rendered in the view.
Defined in: <icm/widget/properties/registry/RegistryManager.js>.
Constructor Summary
Constructor Attributes | Constructor Name and Description |
---|---|
Method Summary
Method Attributes | Method Name and Description |
---|---|
<static> |
icm.model.properties.controller.ControllerManager.bind(editable)
Obtains a property collection controller that is bound to the specified editable object.
|
<static> |
icm.model.properties.controller.ControllerManager.getCaseIntegration()
Returns the controller integration object used for binding
controller objects to case properties.
|
<static> |
icm.model.properties.controller.ControllerManager.getIntegration()
Returns a pseudo controller integration object used for binding
controller objects to case properties, task properties and workflow fields.
|
<static> |
icm.model.properties.controller.ControllerManager.getTaskIntegration()
Returns the controller integration object used for binding
controller objects to task properties.
|
<static> |
icm.model.properties.controller.ControllerManager.getWorkflowIntegration()
Returns the controller integration object used for binding
controller objects to workflow fields.
|
<static> |
icm.model.properties.controller.ControllerManager.mergeConfiguration(config)
Merges a custom integration configuration into all
Integration objects supported by the ControllerManager to
register custom data types and controllers.
|
<static> |
icm.model.properties.controller.ControllerManager.unbind(editable)
Releases the property collection controller binding for the specified editable object.
|
Method Detail
<static> icm.model.properties.controller.ControllerManager.bind(editable)
There can be only one property collection controller for each editable object. This property collection controller is shared by all callers of this method. If the property collection controller associated with the editable object does not yet exist when this method is called, it is created and bound to the editable. Otherwise, the existing property collection controller is returned.
Property collection controllers obtained in this manner must be released via the unbind method to prevent memory leaks and other side effects.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Parameters:
- editable
- The editable model object.
- Returns:
- A icm.model.properties.controller.PropertyCollectionController object
<static> icm.model.properties.controller.ControllerManager.getCaseIntegration()
A custom application may wish to augment this controller integration in some manner to enable additional features in the controller layer. The following code illustrates how this can be done.
var caseIntegration = ControllerManager.getCaseIntegration(); caseIntegration.mergeConfiguration(customCaseConfiguration);
Since the custom configuration settings are merged into the controller manager's case integration, they will be applied to all property collection controllers obtained thereafter.
This sort of customization should only be applied during the initialization stage of the application before any calls to the ControllerManager.bind method.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Returns:
- The case controller integration object.
<static> icm.model.properties.controller.ControllerManager.getIntegration()
In earlier versions, a single controller integration object was used
for all types of properties. Typically, you would retrieve this object
and call its mergeConfiguration method. However, separate controller
integration objects are now used for each type of property. To maintain
backwards compatibility, this method must return an object that supports
mergeConfiguration method for all types of properties.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Deprecated:
- Use the ControllerManager#mergeConfiguration method instead.
- Returns:
- The pseudo controller integration object.
<static> icm.model.properties.controller.ControllerManager.getTaskIntegration()
A custom application may wish to augment this controller integration in some manner to enable additional features in the controller layer. The following code illustrates how this can be done.
var taskIntegration = ControllerManager.getTaskIntegration(); taskIntegration.mergeConfiguration(customTaskConfiguration);
Since the custom configuration settings are merged into the controller manager's task integration, they will be applied to all property collection controllers obtained thereafter.
This sort of customization should only be applied during the initialization stage of the application before any calls to the ControllerManager.bind method.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Returns:
- The task controller integration object.
<static> icm.model.properties.controller.ControllerManager.getWorkflowIntegration()
A custom application may wish to augment this controller integration in some manner to enable additional features in the controller layer. The following code illustrates how this can be done.
var workflowIntegration = ControllerManager.getWorkflowIntegration(); workflowIntegration.mergeConfiguration(customWorkflowConfiguration);
Since the custom configuration settings are merged into the controller manager's workflow integration, they will be applied to all property collection controllers obtained thereafter.
This sort of customization should only be applied during the initialization stage of the application before any calls to the ControllerManager.bind method.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Returns:
- The workflow controller integration object.
<static> icm.model.properties.controller.ControllerManager.mergeConfiguration(config)
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Parameters:
- config
- The integration configuration.
<static> icm.model.properties.controller.ControllerManager.unbind(editable)
Property collection controllers must be released via this method to prevent memory leaks and other side effects.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
- Parameters:
- editable
- Either the editable model object or the icm.model.properties.controller.PropertyCollectionController object that is bound to it.