Interface CompositeComponent

All Superinterfaces:
Component, DepictedObject, Displayable, InfoModel, LabelModel, Model, PresentationModel, com.globalmentor.beans.PropertyBindable, com.globalmentor.beans.PropertyConstrainable
All Known Subinterfaces:
ApplicationFrame, ArrangeContainer, CardContainer, CardControl, Container, ContainerControl, ContentComponent, DialogFrame<V>, FlyoverFrame, Frame, LayoutComponent, LayoutControl, Menu, ModalFrame<R>, ModalNavigationPanel<R>, OptionDialogFrame<O>, Panel
All Known Implementing Classes:
AboutPanel, AbstractApplicationFrame, AbstractArrayCompositeComponent, AbstractBox, AbstractCardPanel, AbstractCompositeComponent, AbstractCompositeStateComponent, AbstractCompositeStateControl, AbstractContainer, AbstractContainerControl, AbstractContainerValueControl, AbstractDialogFrame, AbstractEditComponentTextControl, AbstractEditValuePanel, AbstractEnumCompositeComponent, AbstractFlyoverFrame, AbstractFrame, AbstractLayoutComponent, AbstractLayoutControl, AbstractLayoutValueControl, AbstractListCompositeComponent, AbstractListSelectContainerControl, AbstractListSelectControl, AbstractMenu, AbstractModalFrame, AbstractModalNavigationPanel, AbstractMultipleCompositeComponent, AbstractOptionDialogFrame, AbstractPanel, AbstractSequenceTaskPanel, AbstractSingleCompositeComponent, AbstractValuedPanel, AccordionMenu, ArrangePanel, AutoNavigationPathBreadcrumbLinkPanel, BooleanValueControlSelectControl, BusyPanel, CalendarControl, CalendarDialogFrame, CardPanel, CardTabControl, DateTimeControl, DateTimeFieldsControl, DefaultApplicationFrame, DefaultDialogFrame, DefaultFlyoverFrame, DefaultFrame, DefaultModalFrame, DefaultModalNavigationPanel, DropMenu, EditComponentLabelControl, EditComponentTextControl, GroupPanel, LayoutPanel, ListControl, MessageOptionDialogFrame, NamePanel, NavigationPathBreadcrumbLinkPanel, NotificationOptionDialogFrame, PasswordAuthenticationPanel, PlatformFileUploadPanel, ScrollControl, SectionPanel, SequenceCardPanel, SpinnerControl, TabbedPanel, TabContainerControl, TabControl, Table, TextBox, Toolbar, TreeControl

public interface CompositeComponent extends Component
A component that can contain other components. A composite component may contain other components, but only a Container allows for application addition and removal of child components.
Author:
Garret Wilson
  • Method Details

    • hasChildComponents

      boolean hasChildComponents()
      Returns:
      Whether this component has childh components.
    • getChildComponents

      Iterable<Component> getChildComponents()
      Returns:
      An iterable to child components.
    • addCompositeComponentListener

      void addCompositeComponentListener(CompositeComponentListener compositeComponentListener)
      Adds a composite component listener. An event will be fired for each descendant component added or removed, with the event target indicating the parent composite component of the change.
      Parameters:
      compositeComponentListener - The composite component listener to add.
    • removeCompositeComponentListener

      void removeCompositeComponentListener(CompositeComponentListener compositeComponentListener)
      Removes a composite component listener. An event will be fired for each descendant component added or removed, with the event target indicating the parent composite component of the change.
      Parameters:
      compositeComponentListener - The composite component listener to remove.