ILcyCustomizerPanelframework has been introduced aside of this functionality. Please note that all existing uses of this mechanism, both adding custom implementations and retrieving implementations added by Lucy addons, keep on working. It is however strongly recommended to use the
ILcyCustomizerPanelmechanism for new code. Please refer to the Lucy developer's guide or
TLcyUserInterfaceManager.getCompositeCustomizerPanelFactory()for more information on the new mechanism.
@Deprecated public interface ILcyCustomizerFactory
Customizeris a GUI for a certain
Objectcould be anything, a
|Modifier and Type||Method and Description|
Returns true if createCustomizer will return a customizer that can handle the given object, false otherwise.
Returns a display name for the customizer that will be created by
createCustomizer( aObject, aModel, aView ). It should only be used if
boolean canCreateCustomizer(Object aObject)
aObject- The object to test if a customizer can be created for it.
Customizer createCustomizer(Object aObject)
Customizerfor the given
Customizershould accept the given
Object, so it should not throw an exception when setObject( aObject ) is invoked on the created customizer. Furthermore, the created Customizer must throw an IllegalArgumentException when an attempt is made to set any type of object to the Customizer that it cannot handle. All this is to be able to reuse the same Customizer instance (performance!) for customizing several objects, one after another. This typically means there is a strong relation between
customizer.setObject: at least when the
canCreateCustomizermethod returns false, an
IllegalArgumentExceptionshould be thrown by
setObjectfor the same object. setObject(null) can be used on the created Customizer to (temporarily) de-initialize it. Note: the implementation of this method must not call setObject on the newly created Customizer as this is the responsibility of the user of the created Customizer.