Chapter 5. UI Configuration Overloading
It is likely that you want to change some of the default customizing. Quite possibly, however, (a) you want to make a few changes only and (b) you want to keep these changes if you upgrade to a new version of openCRX. This is where UI configuration overloading can add value. Instead of changing the original UI configuration files provided with the standard distribution you create a new configuration file (or multiple configuration files) containing all your changes. Make sure that you name your file(s) such that your changes are loaded AFTER the default configuration files (configuration files are loaded in alphabetical order), thereby overloading the original configuration.
For example, you might not need the invoicing features of openCRX because you have a full-blown ERP-system taking care of that. You could create an XML file hiding the tab [Invoices] of the Pipeline provider and save it to the ui configuration folder with a name like "zHideElements.xml":
Example 5-1. UI Configuration Overloading - Hiding Tab [Invoices] with zHideElements.xml
<?xml version="1.0" encoding="UTF-8"?>
<org.openmdx.base.Authority xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="org:openmdx:ui1" xsi:noNamespaceSchemaLocation="xri:+resource/org/openmdx/ui1/xmi/ui1.xsd">
<_object/>
<_content>
<provider>
<org.openmdx.base.Provider qualifiedName="CRX" _operation="null">
<_object/>
<_content>
<segment>
<org.openmdx.ui1.Segment qualifiedName="Root" _operation="null">
<_object/>
<_content>
<elementDefinition>
<org.openmdx.ui1.ElementDefinition name="org:opencrx:kernel:contract1:Segment:invoice">
<_object>
<active>false</active>
<toolTip>
<_item>Invoices</_item>
</toolTip>
<label>
<_item>Invoices</_item>
</label>
<order>
<_item>0</_item>
<_item>0</_item>
<_item>60</_item>
</order>
</_object>
<_content/>
</org.openmdx.ui1.ElementDefinition>
</elementDefinition>
</_content>
</org.openmdx.ui1.Segment>
</segment>
</_content>
</org.openmdx.base.Provider>
</provider>
</_content>
</org.openmdx.base.Authority>