com.guiseframework.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, AuthorizeUsersPanel, AutoNavigationPathBreadcrumbLinkPanel, BookDescriptionPanel, BookmarksPanel, BusyPanel, CalendarsPanel, CardPanel, DefaultModalNavigationPanel, DiagnosticPanel, DropDetailsPanel, DropMenu, EditComponentLabelControl, EditComponentTextControl, EditUserPanel, EditUsersPanel, EventWizardPanel, EventWizardPanel.BusinessAddressPanel, EventWizardPanel.BusinessNamePanel, EventWizardPanel.EventNamePanel, EventWizardPanel.PersonalAgePanel, EventWizardPanel.PersonalEmailPanel, EventWizardPanel.PersonalNamePanel, EventWizardPanel2, GenerateContentPanel, GroupPanel, HelloUserPanel, HelloWorldPanel, HomePanel, ImageOpacityPanel, InternationalizationPanel, LayoutPanel, LoginPanel, MarmotPanel, MenusPanel, MultiplicationTablePanel, NamePanel, NavigationPathBreadcrumbLinkPanel, PasswordAuthenticationPanel, PlatformFileUploadPanel, RestrictedPanel, RichTextEditPanel, SectionPanel, SequenceCardPanel, SpinnerControl, TabbedPanel, TabContainerControl, TabsPanel, TemperatureConversionPanel, TemperatureConversionPanel2, TextBox, TextSearchPanel, Toolbar, URFProcessPanel

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 short for(:) form.

Author:
Garret Wilson

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.guiseframework.component.Component
Component.FlyoverStrategy<S extends Component>
 
Field Summary
 
Fields inherited from interface com.guiseframework.component.LayoutComponent
LAYOUT_PROPERTY, LAYOUT_THEME_APPLIED_PROPERTY
 
Fields inherited from interface com.guiseframework.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 com.guiseframework.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
 
Fields inherited from interface com.guiseframework.model.Displayable
DISPLAYED_PROPERTY
 
Fields inherited from interface com.guiseframework.model.InfoModel
DESCRIPTION_CONTENT_TYPE_PROPERTY, DESCRIPTION_PROPERTY, INFO_CONTENT_TYPE_PROPERTY, INFO_PROPERTY
 
Fields inherited from interface com.guiseframework.model.LabelModel
GLYPH_URI_PROPERTY, LABEL_CONTENT_TYPE_PROPERTY, LABEL_PROPERTY
 
Fields inherited from interface com.guiseframework.model.Model
PLAIN_TEXT_CONTENT_TYPE, XHTML_CONTENT_TYPE, XHTML_FRAGMENT_CONTENT_TYPE
 
Method Summary
 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.
 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.
 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>
void
setLayout(Layout<T> newLayout)
          Sets the layout definition for the container.
 int size()
           
 
Methods inherited from interface com.guiseframework.component.LayoutComponent
getLayout, isLayoutThemeApplied, setLayoutThemeApplied
 
Methods inherited from interface com.guiseframework.component.CompositeComponent
addCompositeComponentListener, getChildComponents, hasChildComponents, removeCompositeComponentListener
 
Methods inherited from interface com.guiseframework.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 com.guiseframework.platform.DepictedObject
depict, getDepictID, getSession, processEvent
 
Methods inherited from interface com.guiseframework.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
 
Methods inherited from interface com.guiseframework.model.InfoModel
getDescription, getDescriptionContentType, getInfo, getInfoContentType, setDescription, setDescriptionContentType, setInfo, setInfoContentType
 
Methods inherited from interface com.guiseframework.model.LabelModel
getGlyphURI, getLabel, getLabelContentType, setGlyphURI, setLabel, setLabelContentType
 
Methods inherited from interface com.globalmentor.beans.PropertyBindable
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, hasPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
 
Methods inherited from interface com.globalmentor.beans.PropertyConstrainable
addVetoableChangeListener, addVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, hasVetoableChangeListeners, removeVetoableChangeListener, removeVetoableChangeListener
 
Methods inherited from interface java.lang.Iterable
iterator
 

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, or null 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, or null 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 prototype
java.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:
#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 prototype
java.lang.IllegalStateException - if the installed layout does not support default constraints.
See Also:
#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, or null 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 prototype
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.
See Also:
#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, or null 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 prototype
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.
See Also:
#createComponent(Prototype)

remove

boolean remove(java.lang.Object component)
Removes a component from the container.

Parameters:
object - 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.

Parameters:
newLayout - The new layout definition for the container.
Throws:
java.lang.NullPointerException - if the given layout is null.
java.lang.IllegalStateException - if a new layout is requested while this container has one or more children.
See Also:
LayoutComponent.LAYOUT_PROPERTY


Copyright © 2005-2010 GlobalMentor, Inc. All Rights Reserved.