Interface IUIComp
- All Superinterfaces:
IComponent
,ICustomDataProvider
,IGProp<GProp<?>[]>
,IMessageBox
,IPropCnr
,IVSComponentListener
,IVSComponentState
,IVSFieldListener
- All Known Subinterfaces:
IContentItem
,IEUIComp
,IEUICompCommon
,IEUIContainer
,IEUIPanel
,IUIAction
,IUIAnimatedSingleIndexedSelectionComp
,IUIBooleanSelectionComp
,IUICellSelectionComp
,IUICheck2Component
,IUICheckComponent
,IUICompRelativeTarget
,IUIContainer
,IUIDateTimeComponent
,IUIDateValueComponent
,IUIDoubleRangeValueComponent
,IUIDoubleValueComponent
,IUIHint
,IUIIndexedSelectionComp
,IUILabelForTarget
,IUINullableValueComponent
,IUIRadioComponent
,IUISelectionComp
,IUISingleIndexedSelectionComp
,IUITimeValueComponent
,IUITriStateSelectionComp
,IUIValueComponent
- All Known Implementing Classes:
AbstractContentUIContainer
,AbstractUIAction
,CalendarEvent
,ECalendarEvent
,EMapMarkerProp
,EMapMarkers
,EMLGroup
,EMList
,EMLItemProp
,EMUIHeading
,EMUISimpleDialog
,EMUISwitch
,EMUITabBar
,EUIAccordion
,EUIButton
,EUICalendar
,EUICalendarList
,EUIChart
,EUICheckBox
,EUICheckedMenuItem
,EUIComboBox
,EUIContainer
,EUIContextMenu
,EUIDateTime
,EUIDialog
,EUIEmpty
,EUIGauge
,EUIImage
,EUIImage2
,EUILabel
,EUIMap
,EUIMedia
,EUIMenu
,EUIMenuBar
,EUIMenuItem
,EUIMenuSeparator
,EUIOutput
,EUIPanel
,EUIPanelPart
,EUIPanelPartCnr
,EUIProgress
,EUIRadioButton
,EUIRadioMenuItem
,EUISlider
,EUISpinner
,EUISwapContainer
,EUITabContainer
,EUITable
,EUITableColumn
,EUIText
,EUITextArea
,EUITitlePane
,MapMarkerProp
,MapMarkers
,MLGroup
,MList
,MLItemProp
,MUIHeading
,MUISimpleDialog
,MUISwitch
,MUITabBar
,UIAbstractListChoice
,UIAccordion
,UIButton
,UICalendar
,UICalendarList
,UIChart
,UICheckBox
,UICheckedMenuItem
,UIComboBox
,UIComp
,UIContainer
,UIContextMenu
,UIDateTime
,UIDialog
,UIEmpty
,UIGauge
,UIImage
,UIImage2
,UILabel
,UIMap
,UIMedia
,UIMenu
,UIMenuBar
,UIMenuItem
,UIMenuSeparator
,UIOutput
,UIPanel
,UIPanelBase
,UIPanelPart
,UIPanelPartCnr
,UIProgress
,UIRadioButton
,UIRadioMenuItem
,UISlider
,UISpinner
,UISwapContainer
,UITabContainer
,UITable
,UITableColumn
,UIText
,UITextArea
,UITitlePane
The component has a data container that is not persistent, i.e. is not written e.g. to disk.
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.gyro.IMessageBox
IMessageBox.Icon
Nested classes/interfaces inherited from interface com.iizix.prop.vs.IVSComponentState
IVSComponentState.State
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Message category: ERROR (=2).static final int
Message category: INFORMATION (= 0).static final int
Message category: NONE (= -1).static final int
Remote event for focus.static final int
Message category: WARNING (=1).Fields inherited from interface com.iizix.prop.IGProp
EQC_ERROR_IGNORE_ALL, EQC_ERROR_IGNORE_REFERENCES, EQC_IGNORE_ARRAY, EQC_IGNORE_VOLATILE_OR_EDITOR, EQC_INCLUDE_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
Fields inherited from interface com.iizix.gyro.IMessageBox
ICON_ERROR, ICON_INFORMATION, ICON_MAP, ICON_NONE, ICON_QUESTION, ICON_WARNING
Method Summary
Modifier and TypeMethodDescriptionReturns if this container can accept focus itself or for one of its children components.boolean
Disconnects from the VirtualSpace Field connection.int
Creates or gets the unique ID within the panel for a component.Gets the mappings to VSComponent's for this component.default <COMP extends UIComp>
COMPgetContainerFirstUIComponent
(String name, Class<COMP> uiClass) Gets the first UI component of the specified name and UI class.default <COMP extends UIComp>
COMPgetContainerFirstUIComponentNull
(String name, Class<COMP> uiClass) Gets the first UI component of the specified name and UI class.Gets the current CSS class names assigned to this component.int
Gets the device type: -1=mobile, 0=both, 1=desktop.getErrorMessage
(ValueConversionException exception) Gets the localized error message for a validation exception.getErrorMessage
(ILocaleString localeString, ValueConversionException exception) Gets the localized error message for a validation exception.default <COMP extends UIComp>
COMPgetFirstUIComponent
(String name, Class<COMP> uiClass) Gets the first UI component of the specified name and UI class.default <COMP extends UIComp>
COMPgetFirstUIComponentNull
(String name, Class<COMP> uiClass) Gets the first UI component of the specified name and UI class.int
Gets the designed fixed height of this component in pixels.int
Gets the designed fixed width of this component in pixels.Gets the layout properties of this component.<LAYOUT_MGR extends LayoutMgr<?>>
LAYOUT_MGRgetLayoutMgr
(Class<LAYOUT_MGR> layoutMgrClass) Gets the layout manager for the component.default <COMP extends UIComp>
COMPgetPanelUIComponent
(@UIRef String uiPath, Class<COMP> uiClass) Gets a UI component by UI path reference from the panel.default <COMP extends UIComp>
COMPgetPanelUIComponentNull
(@UIRef String uiPath, Class<COMP> uiClass) Gets a UI component by UI path reference from the panel.getUIRef()
Gets the @UIRef path to this component.Gets the value from a property namedatom
.Gets the value from a property namedname
.Gets the VirtualSpace of the UI component.Gets the connected or disconnected VirtualSpace Field.boolean
isMobile()
Checks if the panel is of mobile type.boolean
isRTL()
Returns if the component is displayed in RTL or not.boolean
Checks if the connection state to the VirtualSpace Field is disconnected.boolean
reconnectVSField
(boolean update) Reconnects to a previously disconnected VirtualSpace Field connection.int
Sets the text or value from this text or value component to its VirtualSpace Field, if any.boolean
setCSSClassNames
(Collection<String> cssNames) Assigns a new collection of class names to the component.boolean
setCSSClassNames2
(Collection<String> cssNames) Assigns a new collection of class names to the component.void
setErrorMessage
(ValueConversionException exception) Transposes an exception from conversion to the component as an error message.void
setErrorMessage
(ILocaleString localeString, ValueConversionException exception) Transposes an exception from conversion to the component as an error message.setUIContainerFocus
(UIComp requestor, boolean doAnimate) Sets the focus to the UI container and all its parents.boolean
setVSFieldMessageToComponent
(VSField field, boolean clear) Sets the VirtualSpace Field's message to this component.void
setVSFieldToComponent
(VSField field) Method called when a VirtualSpace Field is resolved or when reconnection is done.Methods inherited from interface com.iizix.IComponent
clearErrorMessage, getBadge, getKStringText, getLayoutMgr, getMessage, getMessageText, getStyles, getText, getTooltip, getTooltipText, getUIPanel, getUIParent, isEnabled, isReadOnly, isVisible, messageBox, requestFocus, requestFocus, requestFocusEx, requestFocusEx, setBadge, setBadge, setEnabled, setErrorMessage, setErrorMessage, setHTMLText, setLayoutMgr, setMessage, setMessage, setReadOnly, setText, setText, setTooltip, setTooltip, setVisible
Methods inherited from interface com.iizix.prop.ICustomDataProvider
forbiddenGetCustomDataMap, getCustomData, putCustomData, putCustomDataIfAbsent
Methods inherited from interface com.iizix.prop.IGProp
addPropError, addPropListener, dispose, equals, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAtomPath, getClientSessionGyro, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropBaseReference, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getReferencePropName, getRelativePropName, getRootParent, getTreeLock, getValueClasses, getVSReference, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, isSibling, list, list, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onEventSelf, onPropTreeInitialized, onRemoteEvent, removePropError, removePropListener, renameProp, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toElementString, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropType, validatePropValue, verify, warning, warning, warning
Methods inherited from interface com.iizix.gyro.IMessageBox
messageBox, messageBox, messageBox
Methods inherited from interface com.iizix.prop.IPropCnr
addProp, addProp, addProp2, addProp2, canRequestFocus, canRequestFocus, canRequestFocus, containsProp, containsProp, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, enablePropCommunication, enablePropHashMap, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsError, getExtendsName, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropCnr, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getString, getString, getString, getString, hasFocus, initializeExtendsFramework, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsRoot, isPropAddRemoveAllowed, isPropExtended, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, requestFocus, requestFocusEx, setBool, setBool, setBool, setBool, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, usePropHashMap, usesPropIndex, validateClassInstances
Methods inherited from interface com.iizix.prop.vs.IVSComponentListener
onParentStateChanged
Methods inherited from interface com.iizix.prop.vs.IVSFieldListener
getBestVSFieldValueType, onBroken, onResolved, onStateChanged, onValueChanged
Field Details
ERROR
static final int ERRORMessage category: ERROR (=2).- See Also:
WARNING
static final int WARNINGMessage category: WARNING (=1).- See Also:
INFORMATION
static final int INFORMATIONMessage category: INFORMATION (= 0).- See Also:
NONE
static final int NONEMessage category: NONE (= -1).- See Also:
REMOTE_FOCUS_EVENT
static final int REMOTE_FOCUS_EVENTRemote event for focus.- See Also:
Method Details
getDeviceType
int getDeviceType()Gets the device type: -1=mobile, 0=both, 1=desktop.isMobile
boolean isMobile()Checks if the panel is of mobile type.- Returns:
- true if panel is found and it's mobile.
getFixWidth
int getFixWidth()Gets the designed fixed width of this component in pixels.- Returns:
- Zero (default) for not fixed.
getFixHeight
int getFixHeight()Gets the designed fixed height of this component in pixels.- Returns:
- Zero (default) for not fixed.
getComponentID
int getComponentID()Creates or gets the unique ID within the panel for a component. This ID can be used as the HTML ID and is used by the LabelForReference.- Returns:
- A unique number for a component in a panel.
getLayout
LayoutProp getLayout()Gets the layout properties of this component. If the properties are not present, they are created.- Returns:
- The layout properties.
getLayoutMgr
Gets the layout manager for the component.- Parameters:
layoutMgrClass
- The class of the layout manager.- Returns:
- the layout manager instance, or
null
if none is set.
isRTL
boolean isRTL()Returns if the component is displayed in RTL or not.getValue
Gets the value from a property namedname
.- Parameters:
name
- The name of the property.- Returns:
- The
Value
for the property with the specified name, or null if not found.
getValue
Gets the value from a property namedatom
.- Parameters:
atom
- The atom name of the property.- Returns:
- The
Value
for the property with the specified name, or null if not found.
getVirtualSpace
VirtualSpace getVirtualSpace()Gets the VirtualSpace of the UI component.- Returns:
- The VirtualSpace, or null for none.
getVSField
VSField getVSField()Gets the connected or disconnected VirtualSpace Field.- Returns:
- The field, or null if no field resolved (connected or disconnected) is present.
isVSFieldDisconnected
boolean isVSFieldDisconnected()Checks if the connection state to the VirtualSpace Field is disconnected.- Returns:
- true if currently disconnected.
disconnectVSField
boolean disconnectVSField()Disconnects from the VirtualSpace Field connection.- Returns:
- true for success, false if already done or none is connected.
reconnectVSField
boolean reconnectVSField(boolean update) Reconnects to a previously disconnected VirtualSpace Field connection.The method
setVSFieldToComponent(VSField)
is called if there was a disconnected field set.- Parameters:
update
- Update flag, i.e. if all states, messages and field contents should be updated to match the field.- Returns:
- true for success, false if not disconnected.
getComponentMappings
List<VSComponent> getComponentMappings()Gets the mappings to VSComponent's for this component.The VS components are sorted for the deepest first.
- Returns:
- An unmodifiable set of VSComponent's, or null for no VS mappings.
setVSFieldToComponent
Method called when a VirtualSpace Field is resolved or when reconnection is done. Override to provide additional processing. By default all states (enabled, read-only and visible), message and field contents are set from the field to the component.- Parameters:
field
- The VS field.
setVSFieldMessageToComponent
Sets the VirtualSpace Field's message to this component.- Parameters:
field
- The VS field.clear
- Flag to clear the component message if the field hasn't got a message.- Returns:
- true if changed, false for no change.
canAcceptUIContainerFocus
String canAcceptUIContainerFocus()Returns if this container can accept focus itself or for one of its children components. If this is a component and not a container, this request is redirected to the parent container.This method recurses up to the topmost UI container, and all containers must return null for this method to return null.
Typically, a container returns itself as instance if it is disabled or hidden.
- Returns:
- null if this container (or parent container if this is a component) and all containers up to the topmost level returns null, otherwise an error message why the container that did not accept focus.
setUIContainerFocus
Sets the focus to the UI container and all its parents. This method is called when focus is to be set to a component, making it possible for containers such as accordion/swap/tab to change its main container into view.Subclasses must override this method to process it, but make sure to call
super.setUIContainerFocus(requestor)
first!- Parameters:
requestor
- The requestor is a child to this container.doAnimate
- Flag to enable animation when selection is changed for e.g. accordion, swap or tab containers.- Returns:
- null for success, otherwise an error message why it failed.
setComponentToVSField
int setComponentToVSField()Sets the text or value from this text or value component to its VirtualSpace Field, if any.- Returns:
- 1 for update completed, 0 for nothing done and -1 for error occurred.
getErrorMessage
Gets the localized error message for a validation exception.- Parameters:
exception
- The exception.- Returns:
- The error message, e.g. to display in the component.
- Throws:
KStringException
- For exceptions formatting a HTML string.
getErrorMessage
KString getErrorMessage(ILocaleString localeString, ValueConversionException exception) throws KStringException Gets the localized error message for a validation exception.- Parameters:
localeString
- ThelocaleString
instance to used for localization, ornull
to look it up for the current session.exception
- The exception.- Returns:
- The error message, e.g. to display in the component.
- Throws:
KStringException
- For exceptions formatting a HTML string.
setErrorMessage
Transposes an exception from conversion to the component as an error message.- Parameters:
exception
- The exception, ornull
to remove it.
setErrorMessage
Transposes an exception from conversion to the component as an error message.- Parameters:
localeString
- ThelocaleString
instance to used for localization, ornull
to look it up for the current session.exception
- The exception, ornull
to remove it.
getCSSClassNames
Gets the current CSS class names assigned to this component.- Returns:
null
for none, or the class names separated by spaces.
setCSSClassNames
boolean setCSSClassNames(Collection<String> cssNames) throws IllegalArgumentException, PropException Assigns a new collection of class names to the component. Use} if you wish to remove all the class names.invalid @link
{@link Collections.emptyList()
A valid CSS class name consists of a string with the characters 'a-z', 'A-Z', '0-9' or '-_' and cannot start with a digit.
- Parameters:
cssNames
- A collection of Strings for the class names.- Returns:
true
if modified,false
for no change.- Throws:
IllegalArgumentException
- If one of the class names are invalid.PropException
- If there was a property error setting the class names.
setCSSClassNames2
Assigns a new collection of class names to the component. Use} if you wish to remove all the class names.invalid @link
{@link Collections.emptyList()
A valid CSS class name consists of a string with the characters 'a-z', 'A-Z', '0-9' or '-_' and cannot start with a digit.
This method is the same as calling
setCSSClassNames(java.util.Collection<java.lang.String>)
but with a try-catch that logs a warning message in case thePropException
occurs and then returnsfalse
- Parameters:
cssNames
- A collection of Strings for the class names.- Returns:
true
if modified,false
for no change.- Throws:
IllegalArgumentException
- If one of the class names are invalid.
getUIRef
Gets the @UIRef path to this component. This path is relative the panel or context menu that is located in the Panel Module directory.This @UIRef path can be used with the
orgetPanelUIComponent(String,Class)
.getPanelUIComponentNull(String,Class)
- Returns:
- The @UIRef path to the component, or empty string for top-level panel or context menu.
- Throws:
IllegalStateException
- If the UI component tree is invalid.
getPanelUIComponent
default <COMP extends UIComp> COMP getPanelUIComponent(@UIRef String uiPath, Class<COMP> uiClass) throws NotFoundException Gets a UI component by UI path reference from the panel.Note: A UI path is not the same as a property path, it omits the UI container UIComps instance from the path.
- Parameters:
uiPath
- The UI path for the component.uiClass
- The UI class of the component.- Returns:
- The component, never null.
- Throws:
NotFoundException
- The not-found exception is thrown if the component is not found instead of returning null.
getPanelUIComponentNull
default <COMP extends UIComp> COMP getPanelUIComponentNull(@UIRef String uiPath, Class<COMP> uiClass) Gets a UI component by UI path reference from the panel.Note: A UI path is not the same as a property path, it omits the UI container UIComps instance from the path.
- Parameters:
uiPath
- The UI path for the component.uiClass
- The UI class of the component.- Returns:
- The component, or null if not found.
getFirstUIComponent
default <COMP extends UIComp> COMP getFirstUIComponent(String name, Class<COMP> uiClass) throws NotFoundException Gets the first UI component of the specified name and UI class. The search for the component is done from the panel root and searches all its children containers recursively.- Parameters:
name
- The name of the component.uiClass
- The UI class of the component.- Returns:
- The component, never null.
- Throws:
NotFoundException
- The not-found exception is thrown if the component is not found instead of returning null.
getFirstUIComponentNull
Gets the first UI component of the specified name and UI class. The search for the component is done from the panel root and searches all its children containers recursively.- Parameters:
name
- The name of the component.uiClass
- The UI class of the component.- Returns:
- The component, or null if not found.
getContainerFirstUIComponent
default <COMP extends UIComp> COMP getContainerFirstUIComponent(String name, Class<COMP> uiClass) throws NotFoundException Gets the first UI component of the specified name and UI class. The search for the component is done from this UI container, and if this is a UI component, from its parent UI container. Then all children UI containers and components are searched recursively down the component tree.- Parameters:
name
- The name of the component.uiClass
- The UI class of the component.- Returns:
- The component, never null.
- Throws:
NotFoundException
- The not-found exception is thrown if the component is not found instead of returning null.
getContainerFirstUIComponentNull
default <COMP extends UIComp> COMP getContainerFirstUIComponentNull(String name, Class<COMP> uiClass) Gets the first UI component of the specified name and UI class. The search for the component is done from this UI container, and if this is a UI component, from its parent UI container. Then all children UI containers and components are searched recursively down the component tree.- Parameters:
name
- The name of the component.uiClass
- The UI class of the component.- Returns:
- The component, or null if not found.