Represents the table header. The header displays the column header values,
is always visible event if the rest of the table scrolls up and down and
supports column reordering and resizing with mouse.
columnAtPoint
public int columnAtPoint(Point point)
Returns the index of the column at the specified point.
getDraggedColumn
public TableColumn getDraggedColumn()
Get the column that is currently being dragged. This is used when
handling the column reordering with mouse.
- the column being dragged, null if none.
getHeaderRect
public Rectangle getHeaderRect(int column)
Get the rectangle, occupied by the header of the given column.
column
- the column, for that the header area is requested.
getReorderingAllowed
public boolean getReorderingAllowed()
Check if it is possible to reorder the table columns by dragging column
header with mouse. The table reordering is enabled by default, but can be
disabled with
setReorderingAllowed(boolean)
.
- true if reordering is allowed, false otherwise.
getResizingAllowed
public boolean getResizingAllowed()
Check if it is possible to resize the table columns by dragging the column
boundary in the table header with mouse. The resizing is enabled
by default, but can be disabled with
setResizingAllowed(boolean)
.
- true if resizing is allowed, false otherwise.
getResizingColumn
public TableColumn getResizingColumn()
Get the column that is currently being resized. This is used when
handling the column resizing with mouse.
- the column being currently resized, null if none.
getTable
public JTable getTable()
Get the table, having this header.
- the table, having this header.
getUIClassID
public String getUIClassID()
Get the value of the UIClassID property. This property should be a key
in the
UIDefaults
table managed by
UIManager
, the
value of which is the name of a class to load for the component's
JComponent.ui
property.
- getUIClassID in interface JComponent
- A "symbolic" name which will map to a class to use for the
component's UI, such as
"ComponentUI"
initializeLocalVars
protected void initializeLocalVars()
Initializes the fields and properties of this class with default values.
This is called by the constructors.
resizeAndRepaint
public void resizeAndRepaint()
Validates the layout of this table header and repaints it. This is
equivalent to revalidate()
followed by
repaint()
.
setDraggedColumn
public void setDraggedColumn(TableColumn draggingIt)
Set the column that is currently being dragged. This is used when
dragging the column with mouse. Setting to null will stop the
dragging session immediately.
draggingIt
- the column being currently dragged, null if none.
setReorderingAllowed
public void setReorderingAllowed(boolean allowed)
Set the table ability to reorder columns by dragging column header
with mouse. The table reordering is enabled by default, but can be
disabled with this method.
allowed
- true if reordering is allowed, false otherwise.
setResizingAllowed
public void setResizingAllowed(boolean allowed)
Set the table ability to resize columns by dragging the column
boundary in the table header with mouse. The resizing is enabled
by default, but can be disabled using this method.
allowed
- true if resizing is allowed, false otherwise.
setResizingColumn
public void setResizingColumn(TableColumn resizingIt)
The the column that is currently being resized. This property is used
when handling table resizing with mouse. Setting to null would stop
the resizing session immediately.
resizingIt
- the column being currently resized
setTable
public void setTable(JTable t)
Set the value of the
table
property.
t
- The new value of the property
JTableHeader.java --
Copyright (C) 2003, 2004, 2005, 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.