buoy.widget

Class ColumnContainer


public class ColumnContainer
extends WidgetContainer

ColumnContainer is a WidgetContainer which arranges its child Widgets in a single column, from top to bottom.

In addition to the event types generated by all Widgets, ColumnContainers generate the following event types:

Author:
Peter Eastman

Constructor Summary

ColumnContainer()
Create a new ColumnContainer.

Method Summary

void
add(Widget widget)
Add a Widget to this container, using the default LayoutInfo to position it.
void
add(Widget widget, LayoutInfo layout)
Add a Widget to this container.
void
add(Widget widget, int index, LayoutInfo layout)
Add a Widget to this container.
Widget
getChild(int i)
Get the i'th child of this container.
int
getChildCount()
Get the number of children in this container.
int
getChildIndex(Widget widget)
Get the index of a particular Widget.
LayoutInfo
getChildLayout(Widget widget)
Get the LayoutInfo for a particular Widget.
LayoutInfo
getChildLayout(int index)
Get the LayoutInfo for a particular Widget.
Collection
getChildren()
Get a Collection containing all child Widgets of this container.
JPanel
getComponent()
LayoutInfo
getDefaultLayout()
Get the default LayoutInfo.
Dimension
getMinimumSize()
Get the smallest size at which this Widget can reasonably be drawn.
Dimension
getPreferredSize()
Get the preferred size at which this Widget will look best.
void
layoutChildren()
Layout the child Widgets.
void
remove(Widget widget)
Remove a child Widget from this container.
void
remove(int index)
Remove a child Widget from this container.
void
removeAll()
Remove all child Widgets from this container.
void
setChildLayout(Widget widget, LayoutInfo layout)
Set the LayoutInfo for a particular Widget.
void
setChildLayout(int index, LayoutInfo layout)
Set the LayoutInfo for a particular Widget.
void
setDefaultLayout(LayoutInfo layout)
Set the default LayoutInfo.

Methods inherited from class buoy.widget.WidgetContainer

getChildCount, getChildren, isOpaque, layoutChildren, remove, removeAll, setOpaque

Methods inherited from class buoy.widget.Widget

addEventLink, dispatchEvent, getBackground, getBounds, getComponent, getCursor, getFont, getMaximumSize, getMinimumSize, getName, getParent, getPreferredSize, hasFocus, isEnabled, isFocusable, isVisible, repaint, requestFocus, setBackground, setCursor, setEnabled, setFocusable, setFont, setName, setVisible

Methods inherited from class buoy.event.EventSource

addEventLink, addEventLink, addEventLink, dispatchEvent, removeEventLink

Constructor Details

ColumnContainer

public ColumnContainer()
Create a new ColumnContainer.

Method Details

add

public void add(Widget widget)
Add a Widget to this container, using the default LayoutInfo to position it.
Parameters:
widget - the Widget to add

add

public void add(Widget widget,
                LayoutInfo layout)
Add a Widget to this container.
Parameters:
widget - the Widget to add
layout - the LayoutInfo to use for this Widget. If null, the default LayoutInfo will be used.

add

public void add(Widget widget,
                int index,
                LayoutInfo layout)
Add a Widget to this container.
Parameters:
widget - the Widget to add
index - the index at which to add the Widget
layout - the LayoutInfo to use for this Widget. If null, the default LayoutInfo will be used.

getChild

public Widget getChild(int i)
Get the i'th child of this container.

getChildCount

public int getChildCount()
Get the number of children in this container.
Overrides:
getChildCount in interface WidgetContainer

getChildIndex

public int getChildIndex(Widget widget)
Get the index of a particular Widget.
Parameters:
widget - the Widget to locate
Returns:
the position of the Widget within this container, or -1 if the Widget is not a child of this container

getChildLayout

public LayoutInfo getChildLayout(Widget widget)
Get the LayoutInfo for a particular Widget.
Parameters:
widget - the Widget for which to get the LayoutInfo
Returns:
the LayoutInfo being used for that Widget. This may return null, which indicates that the default LayoutInfo is being used. It will also return null if the specified Widget is not a child of this container.

getChildLayout

public LayoutInfo getChildLayout(int index)
Get the LayoutInfo for a particular Widget.
Parameters:
index - the index of the Widget for which to get the LayoutInfo
Returns:
the LayoutInfo being used for that Widget. This may return null, which indicates that the default LayoutInfo is being used.

getChildren

public Collection getChildren()
Get a Collection containing all child Widgets of this container.
Overrides:
getChildren in interface WidgetContainer

getComponent

public JPanel getComponent()
Overrides:
getComponent in interface Widget

getDefaultLayout

public LayoutInfo getDefaultLayout()
Get the default LayoutInfo.

getMinimumSize

public Dimension getMinimumSize()
Get the smallest size at which this Widget can reasonably be drawn. When a WidgetContainer lays out its contents, it will attempt never to make this Widget smaller than its minimum size.
Overrides:
getMinimumSize in interface Widget

getPreferredSize

public Dimension getPreferredSize()
Get the preferred size at which this Widget will look best. When a WidgetContainer lays out its contents, it will attempt to make this Widget as close as possible to its preferred size.
Overrides:
getPreferredSize in interface Widget

layoutChildren

public void layoutChildren()
Layout the child Widgets. This may be invoked whenever something has changed (the size of this WidgetContainer, the preferred size of one of its children, etc.) that causes the layout to no longer be correct. If a child is itself a WidgetContainer, its layoutChildren() method will be called in turn.
Overrides:
layoutChildren in interface WidgetContainer

remove

public void remove(Widget widget)
Remove a child Widget from this container.
Overrides:
remove in interface WidgetContainer
Parameters:
widget - the Widget to remove

remove

public void remove(int index)
Remove a child Widget from this container.
Parameters:
index - the index of the Widget to remove

removeAll

public void removeAll()
Remove all child Widgets from this container.
Overrides:
removeAll in interface WidgetContainer

setChildLayout

public void setChildLayout(Widget widget,
                           LayoutInfo layout)
Set the LayoutInfo for a particular Widget.
Parameters:
widget - the Widget for which to set the LayoutInfo
layout - the new LayoutInfo. If null, the default LayoutInfo will be used

setChildLayout

public void setChildLayout(int index,
                           LayoutInfo layout)
Set the LayoutInfo for a particular Widget.
Parameters:
index - the index of the Widget for which to set the LayoutInfo
layout - the new LayoutInfo. If null, the default LayoutInfo will be used

setDefaultLayout

public void setDefaultLayout(LayoutInfo layout)
Set the default LayoutInfo.

Written by Peter Eastman.