Creo Elements/Direct Model Manager Customization Guide > Customizing the Fluent UI > Builder interfaces and default implementations
Builder interfaces and default implementations
Every XML element in the configuration files is read and processed by a corresponding Java class during startup. This class does not implement the actual user interface element, but a builder for that element. This allows to implement dynamic controls whose state is updated at runtime. If no java_class is specified for an element, a default builder class is used for creating the user interface control. New dynamic controls can be created by implementing the corresponding Java interface and specifying the implementation class for the control in the XML files. The following table lists all available builder interfaces and their default implementations.
Ribbon Element
Interface
Default Implementation
Action
com.osm.ui.ribbon.builder.IActionBuilder
com.osm.ui.ribbon.builder.ActionBuilder
Button
com.osm.ui.ribbon.builder.IControlBuilder<IRibbonControl>
com.osm.ui.ribbon.builder.WMButtonBuilder
Group
com.osm.ui.ribbon.builder.IControlBuilder<WMRibbonGroup>
com.osm.ui.ribbon.builder.WMRibbonGroupBuilder
Tab
com.osm.ui.ribbon.builder.IControlBuilder<WMRibbonTab>
com.osm.ui.ribbon.builder.WMRibbonTabBuilder
Ribbon
com.osm.ui.ribbon.builder.IRibbonBuilder
com.osm.ui.ribbon.builder.WMRibbonBuilder
App Menu 1st Level
com.osm.ui.ribbon.builder.IControlBuilder <IRibbonControl>
com.osm.ui.ribbon.builder. ApplicationMenuEntryPrimaryBuilder
App Menu 2nd Level
com.osm.ui.ribbon.builder.IControlBuilder <WMApplicationMenuEntrySecondary>
com.osm.ui.ribbon.builder. ApplicationMenuEntrySecondaryBuilder
App Menu
com.osm.ui.ribbon.builder.IApplicationMenuBuilder
com.osm.ui.ribbon.builder.ApplicationMenuBuilder
Help Button
com.osm.ui.ribbon.builder.IHelpButtonBuilder
com.osm.ui.ribbon.builder.HelpButtonBuilder
QAT Button
com.osm.ui.ribbon.builder.qat.IControlBuilder <QATButton>
com.osm.ui.ribbon.builder.qat.QATButtonBuilder
Was this helpful?