- java.lang.Object
-
- javax.swing.text.View
-
- javax.swing.text.CompositeView
-
- javax.swing.text.BoxView
-
- javax.swing.text.TableView.TableRow
-
- All Implemented Interfaces:
SwingConstants
- Enclosing class:
- TableView
public class TableView.TableRow extends BoxView
View of a row in a row-centric table.
-
-
Field Summary
-
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
Fields inherited from class javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected SizeRequirements
calculateMajorAxisRequirements(int axis, SizeRequirements r)
Calculates the size requirements for the major axisaxis
.float
getMaximumSpan(int axis)
Determines the maximum span for this view along an axis.float
getMinimumSpan(int axis)
Determines the minimum span for this view along an axis.float
getPreferredSpan(int axis)
Determines the preferred span for this view along an axis.int
getResizeWeight(int axis)
Determines the resizability of the view along the given axis.protected View
getViewAtPosition(int pos, Rectangle a)
Fetches the child view that represents the given position in the model.protected void
layoutMajorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
Perform layout for the major axis of the box (i.e. the axis that it represents).protected void
layoutMinorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
Perform layout for the minor axis of the box (i.e. the axis orthogonal to the axis that it represents).void
replace(int offset, int length, View[] views)
Change the child views.-
Methods inherited from class javax.swing.text.BoxView
baselineLayout, baselineRequirements, calculateMinorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getOffset, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, modelToView, paint, paintChild, preferenceChanged, setAxis, setSize, viewToModel
-
Methods inherited from class javax.swing.text.CompositeView
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewCount, getViewIndex, getViewIndexAtPosition, loadChildren, modelToView, setInsets, setParagraphInsets, setParent
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from class javax.swing.text.View
append, breakView, changedUpdate, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, insertUpdate, isVisible, modelToView, remove, removeAll, removeUpdate, updateChildren, updateLayout, viewToModel
-
-
-
-
Constructor Detail
-
TableRow
public TableRow(Element elem)
Constructs a TableView for the given element.- Parameters:
elem
- the element that this view is responsible for- Since:
- 1.4
-
-
Method Detail
-
replace
public void replace(int offset, int length, View[] views)
Change the child views. This is implemented to provide the superclass behavior and invalidate the grid so that rows and columns will be recalculated.- Overrides:
replace
in classBoxView
- Parameters:
offset
- the starting index into the child views to insert the new views; this should be a value >= 0 and <= getViewCountlength
- the number of existing child views to remove; This should be a value >= 0 and <= (getViewCount() - offset)views
- the child views to add; this value can benull
to indicate no children are being added (useful to remove)
-
calculateMajorAxisRequirements
protected SizeRequirements calculateMajorAxisRequirements(int axis, SizeRequirements r)
Description copied from class:BoxView
Calculates the size requirements for the major axisaxis
.- Overrides:
calculateMajorAxisRequirements
in classBoxView
- Parameters:
axis
- the axis being studiedr
- theSizeRequirements
object; ifnull
one will be created- Returns:
- the newly initialized
SizeRequirements
object - See Also:
SizeRequirements
-
getMinimumSpan
public float getMinimumSpan(int axis)
Description copied from class:BoxView
Determines the minimum span for this view along an axis.- Overrides:
getMinimumSpan
in classBoxView
- Parameters:
axis
- may be eitherView.X_AXIS
orView.Y_AXIS
- Returns:
- the span the view would like to be rendered into >= 0; typically the view is told to render into the span that is returned, although there is no guarantee; the parent may choose to resize or break the view
- See Also:
View.getPreferredSpan(int)
-
getMaximumSpan
public float getMaximumSpan(int axis)
Description copied from class:BoxView
Determines the maximum span for this view along an axis.- Overrides:
getMaximumSpan
in classBoxView
- Parameters:
axis
- may be eitherView.X_AXIS
orView.Y_AXIS
- Returns:
- the span the view would like to be rendered into >= 0; typically the view is told to render into the span that is returned, although there is no guarantee; the parent may choose to resize or break the view
- See Also:
View.getPreferredSpan(int)
-
getPreferredSpan
public float getPreferredSpan(int axis)
Description copied from class:BoxView
Determines the preferred span for this view along an axis.- Overrides:
getPreferredSpan
in classBoxView
- Parameters:
axis
- may be eitherView.X_AXIS
orView.Y_AXIS
- Returns:
- the span the view would like to be rendered into >= 0; typically the view is told to render into the span that is returned, although there is no guarantee; the parent may choose to resize or break the view
- See Also:
View.getPreferredSpan(int)
-
layoutMajorAxis
protected void layoutMajorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
Perform layout for the major axis of the box (i.e. the axis that it represents). The results of the layout should be placed in the given arrays which represent the allocations to the children along the major axis.This is re-implemented to give each child the span of the column width for the table, and to give cells that span multiple columns the multi-column span.
- Overrides:
layoutMajorAxis
in classBoxView
- Parameters:
targetSpan
- the total span given to the view, which would 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.
-
layoutMinorAxis
protected void layoutMinorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
Perform layout for the minor axis of the box (i.e. the axis orthogonal to the axis that it represents). The results of the layout should be placed in the given arrays which represent the allocations to the children along the minor axis. This is called by the superclass whenever the layout needs to be updated along the minor axis.This is implemented to delegate to the superclass, then adjust the span for any cell that spans multiple rows.
- Overrides:
layoutMinorAxis
in classBoxView
- Parameters:
targetSpan
- the total span given to the view, which would 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.
-
getResizeWeight
public int getResizeWeight(int axis)
Determines the resizability of the view along the given axis. A value of 0 or less is not resizable.- Overrides:
getResizeWeight
in classBoxView
- Parameters:
axis
- may be either View.X_AXIS or View.Y_AXIS- Returns:
- the resize weight
- Throws:
IllegalArgumentException
- for an invalid axis
-
getViewAtPosition
protected View getViewAtPosition(int pos, Rectangle a)
Fetches the child view that represents the given position in the model. This is implemented to walk through the children looking for a range that contains the given position. In this view the children do not necessarily have a one to one mapping with the child elements.- Overrides:
getViewAtPosition
in classCompositeView
- Parameters:
pos
- the search position >= 0a
- the allocation to the table on entry, and the allocation of the view containing the position on exit- Returns:
- the view representing the given position, or
null
if there isn't one
-
-