public class FieldGroup extends BaseEntity<FieldGroupConfig> implements Group, WidgetContainer, FieldGroupInterface
Modifier and Type | Class and Description |
---|---|
static class |
FieldGroup.UpdatesOp
Defines the tab item list rearrangements.
|
BaseEntity.CharsPixels
Modifier and Type | Field and Description |
---|---|
private GenericWidget<?> |
firstTabItem
The first tab item
|
private GenericWidget<?> |
lastTabItem
The last tab item
|
private java.util.List<GenericWidget<?>> |
tabItems
Tab item list
|
private java.util.function.Consumer<GenericWidget<?>> |
widgetAdder
Function for adding widgets.
|
private java.util.List<GenericWidget<?>> |
widgets
The list of contained widgets.
|
group
config, deleted, frame
name, nextSibling, prevSibling
instProc
Constructor and Description |
---|
FieldGroup(java.util.List<GenericWidget<?>> widgets,
FieldGroup beforeFg)
Creates an instance to groups related widgets in a frame.
|
Modifier and Type | Method and Description |
---|---|
void |
addDynamicWidget(GenericWidget<?> dynWidget)
Adding new dynamic widget to the current group.
|
void |
addDynamicWidget(GenericWidget<?> dynWidget,
boolean notifyOwnerFrame)
Adding new dynamic widget to this group.
|
void |
addNewTabItem(GenericWidget<?> widget)
Adds a new tab item to the end of the tab item list if the target widget is not in this list
and notifies the client about the changes.
|
void |
addWidget(GenericWidget<?> widget)
Add the specified widget to this field-group.
|
handle |
firstChild()
Accesses the first widget in the list of contained widgets.
|
private GenericWidget<?> |
getExtremeTabItem(boolean first)
Accesses the the first and the last field-level widget in the given field group.
|
handle |
getFirstTabItem()
Getting the FIRST-TAB-ITEM attribute.
|
decimal |
getHeightChars()
Get rectangle FIELD-GROUP:HEIGHT-CHARS value.
|
integer |
getHeightPixels()
Get rectangle FIELD-GROUP:HEIGHT-PIXELS value.
|
handle |
getLastTabItem()
Getting the LAST-TAB-ITEM attribute.
|
GenericWidget<?> |
getNextChild(GenericWidget<?> child)
Accesses the next widget in the list of contained widgets.
|
integer |
getNumTabs()
Get the NUM-TABS attribute, which indicates the number of tab widgets inside this
field-group container.
|
CommonWidget |
getParent()
Gets the PARENT writable attribute.
|
GenericWidget<?> |
getPrevChild(GenericWidget<?> child)
Accesses the previous widget in the list of contained widgets.
|
handle |
getTabItem(int tabPosition)
Get the handle of the tab item by the given tab position.
|
handle |
getTabItem(integer tabPosition)
Get the handle of the tab item by the given tab position.
|
int[] |
getTabItemList()
Return the current tab item list.
|
integer |
getTabPosition(GenericWidget<?> widget)
Returns the tab position of the given tab item.
|
protected java.lang.String[] |
getValidParentTypes()
Returns the widget types that can act as parent for this widget.
|
java.util.Collection<GenericWidget<?>> |
getWidgets()
Extracts field-group widgets.
|
decimal |
getWidthChars()
Get rectangle FIELD-GROUP:WIDTH-CHARS value.
|
integer |
getWidthPixels()
Get rectangle FIELD-GROUP:WIDTH-PIXELS value.
|
handle |
lastChild()
Accesses the last widget in the list of contained widgets.
|
private void |
moveTabItemAtTop(GenericWidget<?> widget,
int pos)
Removes the target widget from the tab item list, add it at the top of the tab item
list at the given position and shifts the other tab items below this target widget.
|
private void |
moveTabItemToEnd(GenericWidget<?> widget)
Removes the target widget from the tab item list and add it to the end of the tab item list.
|
void |
moveWidgetAfter(GenericWidget<?> widget,
GenericWidget<?> after)
Move the target widget after the provided widget in this field-group.
|
void |
moveWidgetBefore(GenericWidget<?> widget,
GenericWidget<?> before)
Move the target widget before the provided widget in this field-group.
|
void |
name(character name)
Sets the name of this handle.This method is outside interfaces and only
meant for initializing this within the implementation.
|
handle |
nextTabItem(GenericWidget<?> widget)
Obtains the next tab item in this field group after the provided widget.
|
private handle |
nextTabItem(GenericWidget<?> widget,
boolean reverse)
Obtains the next tab item in this field group after the provided widget following the given
direction.
|
private void |
placeWidgetInTabList(GenericWidget<?> widget,
FieldGroup.UpdatesOp op,
int pos)
Places the given widget in the current tab item list.
|
handle |
previousTabItem(GenericWidget<?> widget)
Obtains the previous tab item in this field group after the provided widget.
|
void |
removeWidget(GenericWidget<?> widget)
Remove the specified widget from this field-group.
|
protected boolean |
resourceDelete()
Delete the resource.
|
void |
setFirstTabItem(handle wHandle)
Setting the FIRST-TAB-ITEM attribute.
|
void |
setFrame(GenericFrame frame)
Sets the containing frame instance.
|
void |
setLastTabItem(handle wHandle)
Setting the LAST-TAB-ITEM attribute.
|
private void |
setTabItemAfter(GenericWidget<?> widget,
GenericWidget<?> after)
Set the tab item after the provided widget in this field-group.
|
private void |
setTabItemBefore(GenericWidget<?> widget,
GenericWidget<?> before)
Set the tab item before the provided widget in this field-group.
|
void |
setWidgetAdder(java.util.function.Consumer<GenericWidget<?>> widgetAdder)
Set the value of the widgetAdder Consumer.
|
protected void |
toBottom(GenericWidget<?> widget)
Moves the target widget to the bottom of this list.
|
protected void |
toTop(GenericWidget<?> widget)
Moves the target widget to the top of this list.
|
private void |
updateExtremeTabItems()
Updates the first and last tab items if there are initialized.
|
int[] |
updateTabItemList(int[] widgetIds,
FieldGroup.UpdatesOp op)
Update the current tab item list.
|
int[] |
updateTabItemList(java.util.List<GenericWidget<?>> widgets,
FieldGroup.UpdatesOp op)
Update the current tab item list.
|
void |
updateTabItemsOnTabStop(GenericWidget<?> widget,
boolean addToEnd)
Updates tab items on tab stop.
|
protected boolean |
useHandleChainSiblings()
Indicates, that HandleChain implementation of siblings methods should be used.
|
_getHeightChars, _getHeightPixels, _getWidthChars, _getWidthPixels, canSetPixelPositionInChui, changeFontWorker, getBgColor, getBgColorRgb, getColumn, getDColor, getFgColor, getFgColorRgb, getFont, getFrameColumn, getFrameRow, getFrameX, getFrameY, getNextSibling, getParent, getPfColor, getPrevSibling, getRow, getSizeAttrs, getTitle, getTooltip, getX, getY, isMovable, isResizable, isSelected, isTabStop, prepareSizeChars, prepareSizePixels, pushLocAttrs, pushSizeAttrs, resetAutoResize, setAlign, setBgColor, setBgColor, setBgColor, setBgColorRgb, setBgColorRgb, setBgColorRgb, setColon, setColon, setColumn, setColumn, setColumnOrRow, setColumnOrRowWorker, setDColor, setDColor, setDColor, setFgColor, setFgColor, setFgColor, setFgColorRgb, setFgColorRgb, setFgColorRgb, setFont, setGroup, setHeightChars, setHeightChars, setHeightCharsWorker, setHeightPixels, setHeightPixels, setHeightPixelsWorker, setMaxHeightCharsWorker, setMaxHeightPixelsWorker, setMaxWidthCharsWorker, setMaxWidthPixelsWorker, setMinHeightCharsWorker, setMinHeightPixelsWorker, setMinWidthCharsWorker, setMinWidthPixelsWorker, setMovable, setMovable, setParent, setPfColor, setPfColor, setPfColor, setResizable, setResizable, setRow, setRow, setSelected, setSelected, setSizeChars, setSizePixels, setTabStop, setTabStop, setTitle, setTitle, setTooltip, setTooltip, setVirtHeightCharsWorker, setVirtHeightPixelsWorker, setVirtWidthCharsWorker, setVirtWidthPixelsWorker, setWidthChars, setWidthChars, setWidthCharsWorker, setWidthPixels, setWidthPixels, setWidthPixelsWorker, setX, setX, setXorY, setXOrYWorker, setY, setY, validateParent, validateSize, validColumnOrRow
_dynamic, _getDbName, _getFormat, _getTable, _isEntered, _isHidden, _isNotEntered, _isRealized, _isVisible, _setDynamic, _setVisible, afterConfigUpdate, apply, apply, apply, apply, asWidgetHandle, canAccess, canDelete, cleanup, colorDisplay, colorPrompt, config, deselectRows, detachMenu, disable, dynamic, enable, finishConfigProcessing, finishSetup, getColumnFont, getColumnLabel, getContextHelpId, getConvert3D, getCursorOffset, getDataType, getDbName, getFormat, getFrame, getFrameHandle, getHelp, getHWND, getId, getImage, getLabel, getLabelFont, getLabelStr, getMaxHeightChars, getMaxWidthChars, getMenuKey, getMenuMouse, getMousePointer, getMousePosition, getNextTabItem, getNumColumns, getNumSelectedRows, getParentHandle, getPopupMenu, getPreviousTabItem, getQuery, getRetainShape, getScreenValue, getScreenValue, getSideLabelHandle, getStretchToFit, getTable, getTabPosition, getTitleFont, getTransparent, getValidationExpression, getValidationMessage, getVirtHeight, getVirtHeightPixels, getVirtWidth, getVirtWidthPixels, getWidgetId, getWindow, getZOrderClass, hasFormat, hasNameReadOnly, hasParent, hide, hide, implicitDeletion, inputValue, isAutoResize, isAutoReturn, isChained, isChecked, isDisableRedraw, isEntered, isFocusedRowSelected, isHidden, isKeepFrameZOrder, isManualHighlight, isModified, isMultiple, isNotEntered, isScrollable, isSelectable, isSelected, isSelected, isSensitive, isTabWidget, isTextSelected, isThreeD, isValidatable, isVisible, labelSizeCheck, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadMousePointer, loadMousePointer, moveAfterTab, moveAfterTab, moveBeforeTabItem, moveBeforeTabItem, moveToBottom, moveToTop, moveToWorker, name, notQueryable, notQueryable, notSettable, notSettable, notWorker, preRealizeCheck, processSideLabel, pushScreenDefinition, pushWidgetAttr, pushWidgetAttr, readOnlyError, realize, refresh, restoreSharedState, saveSharedState, selectAll, selectFocusedRow, setAtFormatLength, setAutoResize, setAutoResize, setAutoReturn, setAutoReturn, setBlank, setChecked, setChecked, setColumnFont, setColumnFont, setColumnLabel, setColumnLabel, setContextHelpId, setContextHelpId, setConvert3D, setConvert3D, setCursorOffset, setCursorOffset, setDataType, setDataType, setDbname, setDeblank, setDisableAutoZap, setDisableRedraw, setFont, setFormat, setFormat, setFrame, setFrame, setFrameHandle, setFrameHandle, setFrameHandle, setHeader, setHelp, setHelp, setHelpDefault, setHelpStatic, setHidden, setHidden, setId, setKeepFrameZOrder, setKeepFrameZOrder, setLabel, setLabel, setLabelFont, setLabelFont, setLabelInt, setManualHighlight, setManualHighlight, setMaxHeightChars, setMaxWidthChars, setMenuKey, setMenuKey, setMenuMouse, setMenuMouse, setModified, setModified, setMultiple, setMultiple, setNextTabItem, setNoAutoValidate, setNumSelectedRows, setParentHandle, setParentHandle, setPopupMenu, setPopupMenu, setQuery, setRetainShape, setRetainShape, setScreenLock, setScreenValue, setScreenValue, setScrollable, setScrollable, setSelectable, setSelectable, setSensitive, setSensitive, setSensitive, setSensitive, setSideLabelHandle, setStretchToFit, setStretchToFit, setTable, setThreeD, setThreeD, setTitleFont, setTitleFont, setTransparent, setTransparent, setValidation, setValidation, setVertical, setVirtHeight, setVirtHeightPixels, setVirtWidth, setVirtWidthPixels, setVisible, setVisible, setWidgetId, setWidgetId, truncatePixelSize, underline, underline, valid, validate, validateFields, validateFields, validateFields, validateFields, view, widgetName
delete, firstResource, firstResource, getHead, getNextSibling, getPrevSibling, getPrivateData, getTail, hasName, hasNextSibling, hasPrevSibling, hasPrivateData, interlink, lastResource, lastResource, moveInChain, name, setHead, setNextSibling, setNextSibling, setPrevSibling, setPrevSibling, setPrivateData, setPrivateData, setPrivateData
getResourceType, id, id, instantiatingProcedure, invalidAttribute, setInstantiatingProcedure, type, unknown
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
apply, apply, apply, apply, asWidgetHandle, colorDisplay, colorPrompt, deselectRows, disable, enable, getBgColor, getBgColorRgb, getColumn, getColumnFont, getContextHelpId, getCursorOffset, getDColor, getFgColor, getFgColorRgb, getFont, getFrame, getFrameColumn, getFrameHandle, getFrameRow, getFrameX, getFrameY, getHelp, getHWND, getId, getImage, getLabelFont, getLabelStr, getMaxHeightChars, getMaxWidthChars, getMenuKey, getMenuMouse, getMousePointer, getMousePosition, getNextTabItem, getNumColumns, getNumSelectedRows, getParentHandle, getPfColor, getPopupMenu, getPreviousTabItem, getQuery, getRow, getScreenValue, getSideLabelHandle, getTabPosition, getTitle, getTitleFont, getTooltip, getVirtHeight, getVirtHeightPixels, getVirtWidth, getVirtWidthPixels, getWidgetId, getWindow, hide, hide, inputValue, isAutoResize, isChecked, isEntered, isFocusedRowSelected, isHidden, isKeepFrameZOrder, isManualHighlight, isModified, isMovable, isMultiple, isNotEntered, isResizable, isScrollable, isSelectable, isSelected, isSelected, isSelected, isTabStop, isThreeD, isValidatable, isVisible, loadMousePointer, loadMousePointer, moveAfterTab, moveAfterTab, moveBeforeTabItem, moveBeforeTabItem, moveToBottom, moveToTop, preRealizeCheck, realize, refresh, selectAll, selectFocusedRow, setAtFormatLength, setAutoResize, setAutoResize, setBgColor, setBgColorRgb, setBlank, setChecked, setChecked, setColumn, setColumn, setColumnFont, setColumnFont, setContextHelpId, setContextHelpId, setCursorOffset, setCursorOffset, setDColor, setDColor, setDeblank, setDisableAutoZap, setFgColor, setFgColorRgb, setFont, setFont, setFormat, setFrame, setFrame, setFrameHandle, setFrameHandle, setFrameHandle, setGroup, setHeader, setHelp, setHelp, setHidden, setHidden, setId, setKeepFrameZOrder, setKeepFrameZOrder, setLabelFont, setLabelFont, setManualHighlight, setManualHighlight, setMaxHeightChars, setMaxWidthChars, setMenuKey, setMenuKey, setMenuMouse, setMenuMouse, setModified, setModified, setMovable, setMovable, setMultiple, setMultiple, setNextTabItem, setNumSelectedRows, setParent, setParentHandle, setParentHandle, setPfColor, setPfColor, setPopupMenu, setPopupMenu, setQuery, setResizable, setResizable, setRow, setRow, setScreenValue, setScreenValue, setScrollable, setScrollable, setSelectable, setSelectable, setSelected, setSelected, setSensitive, setSideLabelHandle, setTabStop, setTabStop, setThreeD, setThreeD, setTitle, setTitle, setTitleFont, setTitleFont, setTooltip, setTooltip, setValidation, setValidation, setVertical, setVirtHeight, setVirtHeightPixels, setVirtWidth, setVirtWidthPixels, setVisible, setVisible, setWidgetId, setWidgetId, underline, underline, valid, validateFields, validateFields, validateFields, view
getNextSibling, getPrevSibling, getPrivateData, setPrivateData, setPrivateData
getResourceType, readOnlyError
id, id, unknown
getColumnLabel, getDataType, getFormat, getLabel, setColumnLabel, setColumnLabel, setDataType, setDataType, setFormat, setLabel, setLabel
getDbName, getTable
isDisableRedraw, setDisableRedraw, setDisableRedraw
setHeightChars, setHeightChars, setHeightPixels, setHeightPixels, setWidthChars, setWidthChars, setWidthPixels, setWidthPixels
getX, getY, setX, setY
getRetainShape, getStretchToFit, getTransparent, setRetainShape, setRetainShape, setStretchToFit, setStretchToFit, setTransparent, setTransparent
getConvert3D, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, loadImage, setConvert3D, setConvert3D
private java.util.List<GenericWidget<?>> widgets
private java.util.function.Consumer<GenericWidget<?>> widgetAdder
private GenericWidget<?> firstTabItem
private GenericWidget<?> lastTabItem
private java.util.List<GenericWidget<?>> tabItems
public FieldGroup(java.util.List<GenericWidget<?>> widgets, FieldGroup beforeFg)
widgets
- The widgets contained in this instance. This is used as a
read-only resource.beforeFg
- The right neighbor of the field-group been created or null if new field-group
will be the last in the chain. If beforeFg is the first element in the chain
the new BaseEntity will become the new first element in the chain.public integer getHeightPixels()
getHeightPixels
in interface Sizeable
getHeightPixels
in class BaseEntity<FieldGroupConfig>
public decimal getHeightChars()
getHeightChars
in interface Sizeable
getHeightChars
in class BaseEntity<FieldGroupConfig>
public decimal getWidthChars()
getWidthChars
in interface Sizeable
getWidthChars
in class BaseEntity<FieldGroupConfig>
public integer getWidthPixels()
getWidthPixels
in interface Sizeable
getWidthPixels
in class BaseEntity<FieldGroupConfig>
public void removeWidget(GenericWidget<?> widget)
removeWidget
in interface WidgetContainer
widget
- The widget to be removed.public void addWidget(GenericWidget<?> widget)
addWidget
in interface WidgetContainer
widget
- The widget to be added to this field group.public void addNewTabItem(GenericWidget<?> widget)
widget
- The widget to be added to the tab item list.private void moveTabItemToEnd(GenericWidget<?> widget)
widget
- The target widgetprivate void moveTabItemAtTop(GenericWidget<?> widget, int pos)
widget
- The target widgetpos
- The position to place new widget.private void placeWidgetInTabList(GenericWidget<?> widget, FieldGroup.UpdatesOp op, int pos)
widget
- The widgetop
- The current tab item list rearranging operationpos
- The widget position in the corresponding rearranging statementpublic void updateTabItemsOnTabStop(GenericWidget<?> widget, boolean addToEnd)
widget
- The given widgetaddToEnd
- The true value indicates that the given widget is placed at the end of the tab
item list, otherwise its tab position is not changed.public void moveWidgetAfter(GenericWidget<?> widget, GenericWidget<?> after)
widget
- The target widget to be moved.after
- The provided widget.public void moveWidgetBefore(GenericWidget<?> widget, GenericWidget<?> before)
widget
- The target widget to be moved.before
- The provided widget.public void setFrame(GenericFrame frame)
This updates the field-group's parentId, too.
setFrame
in interface CommonWidget
setFrame
in class GenericWidget<FieldGroupConfig>
frame
- GenericFrame
instance that contains this widgetpublic void name(character name)
name
in interface Nameable
name
in class HandleChain
name
- The handle type to be set.public CommonWidget getParent()
getParent
in interface CommonWidget
getParent
in class BaseEntity<FieldGroupConfig>
public handle firstChild()
firstChild
in interface CommonHandleTree
public handle lastChild()
lastChild
in interface CommonHandleTree
public GenericWidget<?> getNextChild(GenericWidget<?> child)
getNextChild
in interface Group
child
- The widget in the list for which to find the following child.null
if there is no subsequent widget.public GenericWidget<?> getPrevChild(GenericWidget<?> child)
getPrevChild
in interface Group
child
- The widget in the list for which to find the preceding child.null
if there is no preceding widget.public handle getFirstTabItem()
getFirstTabItem
in interface FieldGroupInterface
public handle getLastTabItem()
getLastTabItem
in interface FieldGroupInterface
public void setFirstTabItem(handle wHandle)
setFirstTabItem
in interface FieldGroupInterface
wHandle
- The handle of widget in this field-group to assign as first in the tab order.public void setLastTabItem(handle wHandle)
setLastTabItem
in interface FieldGroupInterface
wHandle
- The handle of widget in this field-group to assign as last in the tab order.public java.util.Collection<GenericWidget<?>> getWidgets()
public void addDynamicWidget(GenericWidget<?> dynWidget)
dynWidget
- The widget to be added to this group.public void addDynamicWidget(GenericWidget<?> dynWidget, boolean notifyOwnerFrame)
dynWidget
- The widget to be added to this group.notifyOwnerFrame
- The true value indicates that the owner frame must be notified about new widget.public void setWidgetAdder(java.util.function.Consumer<GenericWidget<?>> widgetAdder)
widgetAdder
- the new value of the widgetAdder.public int[] getTabItemList()
public int[] updateTabItemList(int[] widgetIds, FieldGroup.UpdatesOp op)
widgetIds
- The array of widget idsop
- The current tab item list rearranging operationpublic int[] updateTabItemList(java.util.List<GenericWidget<?>> widgets, FieldGroup.UpdatesOp op)
widgets
- The array of widgetsop
- The current tab item list rearranging operationpublic handle nextTabItem(GenericWidget<?> widget)
widget
- The provided widgetGenericWidget
or null
.public handle previousTabItem(GenericWidget<?> widget)
widget
- The provided widgetGenericWidget
or null
.protected void toTop(GenericWidget<?> widget)
widget
- The target widgetprotected void toBottom(GenericWidget<?> widget)
widget
- The target widgetprivate handle nextTabItem(GenericWidget<?> widget, boolean reverse)
widget
- The provided widgetreverse
- The boolean value that defines the iteration order directionGenericWidget
or null
.protected boolean useHandleChainSiblings()
useHandleChainSiblings
in class BaseEntity<FieldGroupConfig>
HandleChain
is used,
FALSE - if own siblings implementation logic is used.protected java.lang.String[] getValidParentTypes()
getValidParentTypes
in class BaseEntity<FieldGroupConfig>
protected boolean resourceDelete()
Field groups need to be manually removed from the registry, when they are deleted.
resourceDelete
in class GenericWidget<FieldGroupConfig>
true
if the resource was deleted.private GenericWidget<?> getExtremeTabItem(boolean first)
first
- The true value indicates that the first will be accessed, otherwise
the last widget.null
if there are no field level widgets.private void setTabItemAfter(GenericWidget<?> widget, GenericWidget<?> after)
widget
- The tab item.after
- The provided widget.private void setTabItemBefore(GenericWidget<?> widget, GenericWidget<?> before)
widget
- The tab item.before
- The provided widget.private void updateExtremeTabItems()
public integer getNumTabs()
getNumTabs
in interface FieldGroupInterface
public handle getTabItem(integer tabPosition)
getTabItem
in interface FieldGroupInterface
tabPosition
- The tab positionpublic handle getTabItem(int tabPosition)
getTabItem
in interface FieldGroupInterface
tabPosition
- The tab positionpublic integer getTabPosition(GenericWidget<?> widget)
widget
- The tab item.