Package io.guise.framework.component
Interface Container
-
- All Superinterfaces:
Component
,CompositeComponent
,DepictedObject
,Displayable
,InfoModel
,java.lang.Iterable<Component>
,LabelModel
,LayoutComponent
,Model
,PresentationModel
,com.globalmentor.beans.PropertyBindable
,com.globalmentor.beans.PropertyConstrainable
- All Known Subinterfaces:
ArrangeContainer
,CardContainer
,CardControl
,ContainerControl
,Menu
,ModalNavigationPanel<R>
,Panel
- All Known Implementing Classes:
AboutPanel
,AbstractBox
,AbstractCardPanel
,AbstractContainer
,AbstractContainerControl
,AbstractContainerValueControl
,AbstractEditComponentTextControl
,AbstractEditValuePanel
,AbstractListSelectContainerControl
,AbstractMenu
,AbstractModalNavigationPanel
,AbstractPanel
,AbstractSequenceTaskPanel
,AbstractValuedPanel
,AccordionMenu
,ArrangePanel
,AutoNavigationPathBreadcrumbLinkPanel
,BusyPanel
,CardPanel
,DefaultModalNavigationPanel
,DropMenu
,EditComponentLabelControl
,EditComponentTextControl
,GroupPanel
,LayoutPanel
,NamePanel
,NavigationPathBreadcrumbLinkPanel
,PasswordAuthenticationPanel
,PlatformFileUploadPanel
,SectionPanel
,SequenceCardPanel
,SpinnerControl
,TabbedPanel
,TabContainerControl
,TextBox
,Toolbar
public interface Container extends LayoutComponent, java.lang.Iterable<Component>
Component that allows for addition and removal of child components. A layout component is iterable over its child components, and can be used in shortfor(:)
form.- Author:
- Garret Wilson
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.guise.framework.component.Component
Component.FlyoverStrategy<S extends Component>
-
-
Field Summary
-
Fields inherited from interface io.guise.framework.component.Component
BOOKMARK_ENABLED_PROPERTY, CONSTRAINTS_PROPERTY, DRAG_ENABLED_PROPERTY, DROP_ENABLED_PROPERTY, FLYOVER_ENABLED_PROPERTY, FLYOVER_STRATEGY_PROPERTY, INPUT_STRATEGY_PROPERTY, NAME_PROPERTY, NOTIFICATION_PROPERTY, ORIENTATION_PROPERTY, THEME_APPLIED_PROPERTY, VALID_PROPERTY
-
Fields inherited from interface io.guise.framework.model.Displayable
DISPLAYED_PROPERTY
-
Fields inherited from interface io.guise.framework.model.InfoModel
DESCRIPTION_CONTENT_TYPE_PROPERTY, DESCRIPTION_PROPERTY, INFO_CONTENT_TYPE_PROPERTY, INFO_PROPERTY
-
Fields inherited from interface io.guise.framework.model.LabelModel
GLYPH_URI_PROPERTY, LABEL_CONTENT_TYPE_PROPERTY, LABEL_PROPERTY
-
Fields inherited from interface io.guise.framework.component.LayoutComponent
LAYOUT_PROPERTY, LAYOUT_THEME_APPLIED_PROPERTY
-
Fields inherited from interface io.guise.framework.model.ui.PresentationModel
BACKGROUND_COLOR_PROPERTY, BORDER_LINE_FAR_COLOR_PROPERTY, BORDER_LINE_FAR_EXTENT_PROPERTY, BORDER_LINE_FAR_STYLE_PROPERTY, BORDER_LINE_NEAR_COLOR_PROPERTY, BORDER_LINE_NEAR_EXTENT_PROPERTY, BORDER_LINE_NEAR_STYLE_PROPERTY, BORDER_PAGE_FAR_COLOR_PROPERTY, BORDER_PAGE_FAR_EXTENT_PROPERTY, BORDER_PAGE_FAR_STYLE_PROPERTY, BORDER_PAGE_NEAR_COLOR_PROPERTY, BORDER_PAGE_NEAR_EXTENT_PROPERTY, BORDER_PAGE_NEAR_STYLE_PROPERTY, CORNER_LINE_FAR_PAGE_FAR_ARC_SIZE_PROPERTY, CORNER_LINE_FAR_PAGE_NEAR_ARC_SIZE_PROPERTY, CORNER_LINE_NEAR_PAGE_FAR_ARC_SIZE_PROPERTY, CORNER_LINE_NEAR_PAGE_NEAR_ARC_SIZE_PROPERTY, CURSOR_PROPERTY, FONT_FAMILIES_PROPERTY, FONT_SIZE_PROPERTY, FONT_STYLE_PROPERTY, FONT_WEIGHT_BOLD, FONT_WEIGHT_NORMAL, FONT_WEIGHT_PROPERTY, LABEL_FONT_FAMILIES_PROPERTY, LABEL_FONT_SIZE_PROPERTY, LABEL_FONT_STYLE_PROPERTY, LABEL_FONT_WEIGHT_PROPERTY, LABEL_TEXT_COLOR_PROPERTY, LINE_EXTENT_PROPERTY, MARGIN_LINE_FAR_EXTENT_PROPERTY, MARGIN_LINE_NEAR_EXTENT_PROPERTY, MARGIN_PAGE_FAR_EXTENT_PROPERTY, MARGIN_PAGE_NEAR_EXTENT_PROPERTY, OPACITY_PROPERTY, PADDING_LINE_FAR_EXTENT_PROPERTY, PADDING_LINE_NEAR_EXTENT_PROPERTY, PADDING_PAGE_FAR_EXTENT_PROPERTY, PADDING_PAGE_NEAR_EXTENT_PROPERTY, PAGE_EXTENT_PROPERTY, ROUNDED_CORNER_ARC_SIZE, STYLE_ID_PROPERTY, TEXT_COLOR_PROPERTY, TOOLTIP_ENABLED_PROPERTY, VISIBLE_PROPERTY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
add(int index, Component component, Constraints constraints)
Adds a component along with constraints to the container at the specified index.Component
add(int index, Prototype prototype)
Adds a component based upon the given prototype to the container with default constraints at the specified index.Component
add(int index, Prototype prototype, Constraints constraints)
Adds a component based upon the given prototype to the container along with constraints at the specified index.boolean
add(Component component)
Adds a component with default constraints to the container.boolean
add(Component component, Constraints constraints)
Adds a component along with constraints to the container.Component
add(Prototype prototype)
Adds a component based upon the given prototype to the container with default constraints.Component
add(Prototype prototype, Constraints constraints)
Adds a component based upon the given prototype to the container along with constraints.void
clear()
Removes all of the components from this container.boolean
contains(java.lang.Object component)
Determines whether this container contains the given component.Component
get(int index)
Returns the component at the specified index in the container.int
indexOf(java.lang.Object component)
Returns the index in the container of the first occurrence of the specified component.boolean
isEmpty()
int
lastIndexOf(java.lang.Object component)
Returns the index in this container of the last occurrence of the specified compoent.Component
remove(int index)
Removes the child component at the specified position in this container.boolean
remove(java.lang.Object component)
Removes a component from the container.<T extends Constraints>
voidsetLayout(Layout<T> newLayout)
Sets the layout definition for the container.int
size()
-
Methods inherited from interface io.guise.framework.component.Component
addCommandListener, addExportStrategy, addImportStrategy, addKeyListener, addMouseListener, addNotificationListener, addPreferenceProperty, applyTheme, applyTheme, dispatchInputEvent, exportTransfer, fireInputEvent, getAncestor, getComponentOrientation, getConstraints, getDepictor, getFlyoverStrategy, getInputStrategy, getName, getNotification, getOrientation, getParent, getPreferenceProperties, getTheme, hasCommandListeners, hasKeyListeners, hasMouseListeners, importTransfer, initialize, isDragEnabled, isDropEnabled, isFlyoverEnabled, isPreferenceProperty, isThemeApplied, isValid, loadPreferences, notify, removeCommandListener, removeExportStrategy, removeImportStrategy, removeKeyListener, removeMouseListener, removeNotificationListener, removePreferenceProperty, resetTheme, savePreferences, setConstraints, setDragEnabled, setDropEnabled, setFlyoverEnabled, setFlyoverStrategy, setInputStrategy, setName, setNotification, setOrientation, setParent, setThemeApplied, updateTheme, validate
-
Methods inherited from interface io.guise.framework.component.CompositeComponent
addCompositeComponentListener, getChildComponents, hasChildComponents, removeCompositeComponentListener
-
Methods inherited from interface io.guise.framework.platform.DepictedObject
depict, getDepictID, getSession, processEvent
-
Methods inherited from interface io.guise.framework.model.InfoModel
getDescription, getDescriptionContentType, getInfo, getInfoContentType, setDescription, setDescriptionContentType, setInfo, setInfoContentType
-
Methods inherited from interface io.guise.framework.model.LabelModel
getGlyphURI, getLabel, getLabelContentType, setGlyphURI, setLabel, setLabelContentType
-
Methods inherited from interface io.guise.framework.component.LayoutComponent
getLayout, isLayoutThemeApplied, setLayoutThemeApplied
-
Methods inherited from interface io.guise.framework.model.ui.PresentationModel
BorderLineFarColor, BorderLineFarExtent, BorderLineFarStyle, BorderLineNearColor, BorderLineNearExtent, BorderLineNearStyle, BorderPageFarColor, BorderPageFarExtent, BorderPageFarStyle, BorderPageNearColor, BorderPageNearExtent, BorderPageNearStyle, getBackgroundColor, getBorderColor, getBorderExtent, getBorderStyle, getCornerArcSize, getCornerLineFarPageFarArcSize, getCornerLineFarPageNearArcSize, getCornerLineNearPageFarArcSize, getCornerLineNearPageNearArcSize, getCursor, getExtent, getFontFamilies, getFontSize, getFontStyle, getFontWeight, getLabelFontFamilies, getLabelFontSize, getLabelFontStyle, getLabelFontWeight, getLabelTextColor, getLineExtent, getMarginExtent, getMarginLineFarExtent, getMarginLineNearExtent, getMarginPageFarExtent, getMarginPageNearExtent, getOpacity, getPaddingExtent, getPaddingLineFarExtent, getPaddingLineNearExtent, getPaddingPageFarExtent, getPaddingPageNearExtent, getPageExtent, getSession, getStyleID, getTextColor, isDisplayed, isTooltipEnabled, isVisible, setBackgroundColor, setBorderColor, setBorderColor, setBorderExtent, setBorderExtent, setBorderLineFarColor, setBorderLineFarExtent, setBorderLineFarStyle, setBorderLineNearColor, setBorderLineNearExtent, setBorderLineNearStyle, setBorderPageFarColor, setBorderPageFarExtent, setBorderPageFarStyle, setBorderPageNearColor, setBorderPageNearExtent, setBorderPageNearStyle, setBorderStyle, setBorderStyle, setCornerArcSize, setCornerArcSize, setCornerLineFarPageFarArcSize, setCornerLineFarPageNearArcSize, setCornerLineNearPageFarArcSize, setCornerLineNearPageNearArcSize, setCursor, setDisplayed, setExtent, setFontFamilies, setFontSize, setFontStyle, setFontWeight, setLabelFontFamilies, setLabelFontSize, setLabelFontStyle, setLabelFontWeight, setLabelTextColor, setLineExtent, setMarginExtent, setMarginExtent, setMarginLineFarExtent, setMarginLineNearExtent, setMarginPageFarExtent, setMarginPageNearExtent, setOpacity, setPaddingExtent, setPaddingExtent, setPaddingLineFarExtent, setPaddingLineNearExtent, setPaddingPageFarExtent, setPaddingPageNearExtent, setPageExtent, setStyleID, setTextColor, setTooltipEnabled, setVisible
-
-
-
-
Method Detail
-
size
int size()
- Returns:
- The number of child components in this composite component.
-
isEmpty
boolean isEmpty()
- Returns:
- Whether this container contains no child components.
-
contains
boolean contains(java.lang.Object component)
Determines whether this container contains the given component.- Parameters:
component
- The component to check.- Returns:
true
if this container contains the given component.
-
indexOf
int indexOf(java.lang.Object component)
Returns the index in the container of the first occurrence of the specified component.- Parameters:
component
- The component the index of which should be returned.- Returns:
- The index in this container of the first occurrence of the specified component, or -1 if this container does not contain the given component.
-
lastIndexOf
int lastIndexOf(java.lang.Object component)
Returns the index in this container of the last occurrence of the specified compoent.- Parameters:
component
- The component the last index of which should be returned.- Returns:
- The index in this container of the last occurrence of the specified component, or -1 if this container does not contain the given component.
-
get
Component get(int index)
Returns the component at the specified index in the container.- Parameters:
index
- The index of component to return.- Returns:
- The component at the specified position in this container.
- Throws:
java.lang.IndexOutOfBoundsException
- if the index is out of range.
-
add
boolean add(Component component)
Adds a component with default constraints to the container.- Parameters:
component
- The component to add to this container.- Returns:
true
if this container changed as a result of the operation.- Throws:
java.lang.IllegalArgumentException
- if the component already has a parent.java.lang.IllegalStateException
- if the installed layout does not support default constraints.
-
add
void add(int index, Component component, Constraints constraints)
Adds a component along with constraints to the container at the specified index. This is a convenience method that first sets the constraints of the component.- Parameters:
index
- The index at which the component should be added.component
- The component to add to this container.constraints
- The constraints for the layout, ornull
if default constraints should be used.- Throws:
java.lang.IllegalArgumentException
- if the component already has a parent.java.lang.ClassCastException
- if the provided constraints are not appropriate for the installed layout.java.lang.IllegalStateException
- if no constraints were provided and the installed layout does not support default constraints.java.lang.IndexOutOfBoundsException
- if the index is less than zero or greater than the number of child components.
-
add
boolean add(Component component, Constraints constraints)
Adds a component along with constraints to the container. This is a convenience method that first sets the constraints of the component.- Parameters:
component
- The component to add to this container.constraints
- The constraints for the layout, ornull
if default constraints should be used.- Returns:
true
if this container changed as a result of the operation.- Throws:
java.lang.IllegalArgumentException
- if the component already has a parent.java.lang.ClassCastException
- if the provided constraints are not appropriate for the installed layout.java.lang.IllegalStateException
- if no constraints were provided and the installed layout does not support default constraints.
-
add
Component add(int index, Prototype prototype)
Adds a component based upon the given prototype to the container with default constraints at the specified index.- Parameters:
index
- The index at which the component should be added.prototype
- The prototype of the component to add.- Returns:
- The component created to represent the given prototype.
- Throws:
java.lang.IllegalArgumentException
- if no component can be created from the given prototypejava.lang.IllegalStateException
- if the installed layout does not support default constraints.java.lang.IndexOutOfBoundsException
- if the index is less than zero or greater than the number of child components.- See Also:
AbstractContainer.createComponent(Prototype)
-
add
Component add(Prototype prototype)
Adds a component based upon the given prototype to the container with default constraints.- Parameters:
prototype
- The prototype of the component to add.- Returns:
- The component created to represent the given prototype.
- Throws:
java.lang.IllegalArgumentException
- if no component can be created from the given prototypejava.lang.IllegalStateException
- if the installed layout does not support default constraints.- See Also:
AbstractContainer.createComponent(Prototype)
-
add
Component add(int index, Prototype prototype, Constraints constraints)
Adds a component based upon the given prototype to the container along with constraints at the specified index.- Parameters:
index
- The index at which the component should be added.prototype
- The prototype of the component to add.constraints
- The constraints for the layout, ornull
if default constraints should be used.- Returns:
- The component created to represent the given prototype.
- Throws:
java.lang.IllegalArgumentException
- if no component can be created from the given prototypejava.lang.ClassCastException
- if the provided constraints are not appropriate for the installed layout.java.lang.IllegalStateException
- if no constraints were provided and the installed layout does not support default constraints.java.lang.IndexOutOfBoundsException
- if the index is less than zero or greater than the number of child components.- See Also:
AbstractContainer.createComponent(Prototype)
-
add
Component add(Prototype prototype, Constraints constraints)
Adds a component based upon the given prototype to the container along with constraints.- Parameters:
prototype
- The prototype of the component to add.constraints
- The constraints for the layout, ornull
if default constraints should be used.- Returns:
- The component created to represent the given prototype.
- Throws:
java.lang.IllegalArgumentException
- if no component can be created from the given prototypejava.lang.ClassCastException
- if the provided constraints are not appropriate for the installed layout.java.lang.IllegalStateException
- if no constraints were provided and the installed layout does not support default constraints.
-
remove
boolean remove(java.lang.Object component)
Removes a component from the container.- Parameters:
component
- The component to remove.- Returns:
true
if this collection changed as a result of the operation.- Throws:
java.lang.ClassCastException
- if given element is not a component.java.lang.IllegalArgumentException
- if the component is not a member of the container.
-
remove
Component remove(int index)
Removes the child component at the specified position in this container.- Parameters:
index
- The index of the component to removed.- Returns:
- The value previously at the specified position.
- Throws:
java.lang.IndexOutOfBoundsException
- if the index is out of range (index < 0 || index >=size()
).
-
clear
void clear()
Removes all of the components from this container.
-
setLayout
<T extends Constraints> void setLayout(Layout<T> newLayout)
Sets the layout definition for the container. The layout definition can only be changed if the container currently has no child components. This is a bound property.- Type Parameters:
T
- The type of the constraints.- Parameters:
newLayout
- The new layout definition for the container.- Throws:
java.lang.NullPointerException
- if the given layout isnull
.java.lang.IllegalStateException
- if a new layout is requested while this container has one or more children.- See Also:
LayoutComponent.LAYOUT_PROPERTY
-
-