javax.swing.text

Class TableView.TableRow

Enclosing Class:
TableView
Implemented Interfaces:
SwingConstants

public class TableView.TableRow
extends BoxView

A view implementation that renders a row of a TableView. This is implemented as a horizontal box that contains the actual cells of the table.

Field Summary

Fields inherited from class javax.swing.text.View

BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS

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

Constructor Summary

TableRow(Element el)
Creates a new instance of TableRow.

Method Summary

int
getResizeWeight(int axis)
Determines the resizeability of this view along the specified axis.
protected View
getViewAtPosition(int pos, Rectangle a)
Returns the child view that represents the specified position in the model.
protected void
layoutMajorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
Lays out the box's child views along the major axis.
protected void
layoutMinorAxis(int targetSpan, int axis, int[] offsets, int[] spans)
Lays out the box's child views along the minor axis (the orthogonal axis to the major axis).
void
replace(int offset, int length, View[] views)
Replaces some child views with a new set of child views.

Methods inherited from class javax.swing.text.BoxView

baselineLayout, baselineRequirements, calculateMajorAxisRequirements, calculateMinorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getMaximumSpan, getMinimumSpan, getOffset, getPreferredSpan, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paint, paintChild, preferenceChanged, replace, setAxis, setSize, viewToModel

Methods inherited from class javax.swing.text.CompositeView

childAllocation, flipEastAndWestAtEnds, getBottomInset, getChildAllocation, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPoint, getViewAtPosition, getViewCount, getViewIndex, getViewIndexAtPosition, isAfter, isBefore, loadChildren, modelToView, modelToView, replace, setInsets, setParagraphInsets, setParent, viewToModel

Methods inherited from class javax.swing.text.View

append, breakView, changedUpdate, createFragment, dump, forwardUpdate, forwardUpdateToView, getAlignment, getAttributes, getBreakWeight, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getGraphics, getMaximumSpan, getMinimumSpan, getNextVisualPositionFrom, getParent, getPreferredSpan, getResizeWeight, getStartOffset, getToolTipText, getView, getViewCount, getViewFactory, getViewIndex, getViewIndex, insert, insertUpdate, isVisible, modelToView, modelToView, modelToView, paint, preferenceChanged, remove, removeAll, removeUpdate, replace, setParent, setSize, updateChildren, updateLayout, viewToModel, viewToModel

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

TableRow

public TableRow(Element el)
Creates a new instance of TableRow.
Parameters:
el - the element for which to create a row view

Method Details

getResizeWeight

public int getResizeWeight(int axis)
Determines the resizeability of this view along the specified axis.
Overrides:
getResizeWeight in interface BoxView
Parameters:
axis - the axis of which to fetch the resizability
Returns:
the resize weight or <= 0 if this view is not resizable
Throws:
IllegalArgumentException - when an illegal axis is specified

getViewAtPosition

protected View getViewAtPosition(int pos,
                                 Rectangle a)
Returns the child view that represents the specified position in the model. This is reimplemented because in this view we do not necessarily have a one to one mapping of child elements to child views.
Overrides:
getViewAtPosition in interface CompositeView
Parameters:
pos - the model position for which to query the view
a - the allocation of this view
Returns:
the view that corresponds to the specified model position or null if there is none

layoutMajorAxis

protected void layoutMajorAxis(int targetSpan,
                               int axis,
                               int[] offsets,
                               int[] spans)
Lays out the box's child views along the major axis. This is reimplemented so that the child views all have the width of their column.
Overrides:
layoutMajorAxis in interface BoxView
Parameters:
targetSpan - the total span of the view
axis - the axis that is laid out
offsets - an array that holds the offsets of the child views after this method returned
spans - an array that holds the spans of the child views after this method returned

layoutMinorAxis

protected void layoutMinorAxis(int targetSpan,
                               int axis,
                               int[] offsets,
                               int[] spans)
Lays out the box's child views along the minor axis (the orthogonal axis to the major axis). This is reimplemented to call the super behaviour and then adjust the span of the child views that span multiple rows.
Overrides:
layoutMinorAxis in interface BoxView
Parameters:
targetSpan - the total span of the view
axis - the axis that is laid out
offsets - an array that holds the offsets of the child views after this method returned
spans - an array that holds the spans of the child views after this method returned

replace

public void replace(int offset,
                    int length,
                    View[] views)
Replaces some child views with a new set of child views. This is implemented to call the superclass behaviour and invalidates the row grid so that rows and columns will be recalculated.
Overrides:
replace in interface BoxView
Parameters:
offset - the start offset at which to replace views
length - the number of views to remove
views - the new set of views

TableView.java -- A view impl for tables inside styled text Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.