|
Java Platform 1.2 Beta 4 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.sun.java.swing.text.View | +--com.sun.java.swing.text.CompositeView | +--com.sun.java.swing.text.BoxView | +--com.sun.java.swing.text.TableView
Implements View interface for a table, that is composed of a specific element structure where the child elements of the element this view is responsible for represent rows and the child elements of the row elements are cells. The cell elements can have an arbitrary element structure under them.
TABLE
ROW
CELL
CELL
ROW
CELL
CELL
This is implemented as a hierarchy of boxes, the table itself is a vertical box, the rows are horizontal boxes, and the cells are vertical boxes. The cells are allowed to span multiple columns and rows. By default, the table can be thought of as being formed over a grid (i.e. somewhat like one would find in gridbag layout), where table cells can request to span more than one grid cell. The default horizontal span of table cells will be based upon this grid, but can be changed by reimplementing the requested span of the cell (i.e. table cells can have independant spans if desired).
View
Inner Class Summary | |
TableView.TableCell
View of a cell in a table |
|
TableView.TableRow
View of a row in a table. |
Fields inherited from class com.sun.java.swing.text.View | |
BadBreakWeight , ExcellentBreakWeight , ForcedBreakWeight , GoodBreakWeight , X_AXIS , Y_AXIS |
Constructor Summary | |
TableView(Element elem)
Constructs a TableView for the given element. |
Method Summary | |
protected SizeRequirements | calculateMinorAxisRequirements(int axis,
SizeRequirements r)
Calculate the requirements for the minor axis. |
protected TableView.TableCell | createTableCell(Element elem)
Creates a new table cell. |
protected TableView.TableRow | createTableRow(Element elem)
Creates a new table row. |
protected void | layoutColumns(int targetSpan,
int[] offsets,
int[] spans,
SizeRequirements[] reqs)
Layout the columns to fit within the given target span. |
protected void | layoutMinorAxis(int targetSpan,
int axis,
int[] offsets,
int[] spans)
Perform layout for the minor axis of the box (i.e. the axis orthoginal to the axis that it represents). |
protected void | loadChildren(ViewFactory f)
Loads all of the children to initialize the view. |
Methods inherited from class com.sun.java.swing.text.BoxView | |
baselineLayout , baselineRequirements , calculateMajorAxisRequirements , changedUpdate , childAllocation , getAlignment , getHeight , getMaximumSpan , getMinimumSpan , getOffset , getPreferredSpan , getResizeWeight , getSpan , getViewAtPoint , getWidth , insertUpdate , isAfter , isAllocationValid , isBefore , layout , layoutMajorAxis , modelToView , paint , paintChild , preferenceChanged , removeUpdate , replace , setSize , viewToModel |
Methods inherited from class com.sun.java.swing.text.CompositeView | |
append , getBottomInset , getChildAllocation , getInsideAllocation , getLeftInset , getRightInset , getTopInset , getView , getViewAtPosition , getViewCount , insert , removeAll , setInsets , setParagraphInsets , setParent |
Methods inherited from class com.sun.java.swing.text.View | |
breakView , createFragment , getAttributes , getBreakWeight , getContainer , getDocument , getElement , getEndOffset , getNextVisualPositionFrom , getParent , getStartOffset , getViewFactory , modelToView , viewToModel |
Methods inherited from class java.lang.Object | |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
Constructor Detail |
public TableView(Element elem)
elem
- the element that this view is responsible forMethod Detail |
protected TableView.TableRow createTableRow(Element elem)
elem
- an elementprotected TableView.TableCell createTableCell(Element elem)
elem
- an elementprotected void loadChildren(ViewFactory f)
setParent
method.
This is reimplemented to build rows using the
createTableRow
method and then
proxy cell entries for each of the cells that
span multiple columns or rows, substantially
reducing the complexity of the layout calculations.
f
- the view factoryprotected void layoutColumns(int targetSpan, int[] offsets, int[] spans, SizeRequirements[] reqs)
targetSpan
- the given span for total of all the table
columns.
reqs
- the requirements desired for each column. This
is the column maximum of the cells minimum, preferred, and
maximum requested span.
spans
- the return value of how much to allocated to
each column.
offsets
- the return value of the offset from the
origin for each column.protected void layoutMinorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
This is implemented to call the layoutColumns method, and then forward to the superclass to actually carry out the layout of the tables rows.
targetSpan
- the total span given to the view, which
whould be used to layout the children.
axis
- the axis being layed out.
offsets
- the offsets from the origin of the view for
each of the child views. This is a return value and is
filled in by the implementation of this method.
spans
- the span of each child view. This is a return
value and is filled in by the implementation of this method.protected SizeRequirements calculateMinorAxisRequirements(int axis, SizeRequirements r)
This is implemented to calculate the requirements as the sum of the requirements of the columns.
|
Java Platform 1.2 Beta 4 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |