Removing a control
The layout of the IBM Sales Center dialogs and editors are constructed using configured controls. A configured control is a user interface element that is declared using the controls extension point. The definition of a configured control includes a unique identifier, the type of control, and additional attributes and properties that are specific to the type of control being defined. The control type is used to locate a control factory class that will construct the new configured control. This section explains how to remove a control.
Procedure
- Determine the ID of a user interface element you want to remove and note its ID.
- Use the system configurator extension point to create a system property where the name of the property is the fully-qualified ID of the control you are removing, and the value of the property is null. All instances of the control that are used in the Sales Center user interface will be removed. For example: com.ibm.commerce.telesales.ui.impl.customerUserNameRow=null removes the Logon ID row (which contains customerUserNameLabel and customerUserNameField) from its current location in the Customer name section of the customer editor.
Results
Notes: Consider the following alternative
approaches to removing a control:
- To remove a control from all of the composite definitions that include the control, set the control ID to null. Other controls that use the removed control as a reference (using the referenceId attribute) control will not be affected.
- If the control is included in a gridCompositeDefinition, consider setting the ID of the row to null to suppress the row (as in the example). This will only affect the specific composite definition that contains the row with the specified ID. If other gridCompositeDefinition rows use the referenceId attribute to refer to this row, they will not be affected. Alternatively, you can set the IDs of all of the controls in the row to null to remove the row from all composite definitions that include the row.
- If the control is included in a formCompositeDefinition, then the ID may be used in the relativeControlId attribute. Removing the control by setting its ID to null may cause unwanted results for these form composite definitions. In this case it may be necessary to replace the formCompositeDefinition with one that does not include the control that you are trying to remove.