|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.swing.plaf.ComponentUI
javax.swing.plaf.ListUI
javax.swing.plaf.basic.BasicListUI
public class BasicListUI
The Basic Look and Feel UI delegate for the JList.
Nested Class Summary | |
---|---|
class |
BasicListUI.FocusHandler
A helper class which listens for FocusEvent s
from the JList. |
class |
BasicListUI.ListDataHandler
A helper class which listens for ListDataEvent s generated by
the JList 's ListModel . |
class |
BasicListUI.ListSelectionHandler
A helper class which listens for ListSelectionEvent s
from the JList 's ListSelectionModel . |
class |
BasicListUI.MouseInputHandler
A helper class which listens for MouseEvent s
from the JList . |
class |
BasicListUI.PropertyChangeHandler
Helper class which listens to PropertyChangeEvent s
from the JList . |
Field Summary | |
---|---|
protected int |
cellHeight
The height of a single cell in the list. |
protected int[] |
cellHeights
An array of varying heights of cells in the list, in cases where each cell might have a different height. |
protected static int |
cellRendererChanged
A constant to indicate that the cellRenderer has changed. |
protected int |
cellWidth
The width of a single cell in the list. |
protected static int |
fixedCellHeightChanged
A constant to indicate that the fixedCellHeight has changed. |
protected static int |
fixedCellWidthChanged
A constant to indicate that the fixedCellWidth has changed. |
protected FocusListener |
focusListener
The current focus listener. |
protected static int |
fontChanged
A constant to indicate that the font has changed. |
protected JList |
list
Saved reference to the list this UI was created for. |
protected ListDataListener |
listDataListener
The data listener listening to the model. |
protected ListSelectionListener |
listSelectionListener
The selection listener listening to the selection model. |
protected static int |
modelChanged
A constant to indicate that the model has changed. |
protected MouseInputListener |
mouseInputListener
The mouse listener listening to the list. |
protected PropertyChangeListener |
propertyChangeListener
The property change listener listening to the list. |
protected static int |
prototypeCellValueChanged
A constant to indicate that the prototypeCellValue has changed. |
protected CellRendererPane |
rendererPane
The CellRendererPane that is used for painting. |
protected static int |
selectionModelChanged
A constant to indicate that the selection model has changed. |
protected int |
updateLayoutStateNeeded
A bitmask that indicates which properties of the JList have changed. |
Constructor Summary | |
---|---|
BasicListUI()
Creates a new BasicListUI object. |
Method Summary | |
---|---|
protected int |
convertRowToY(int row)
Calculate the Y coordinate of the upper edge of a particular row, considering the Y coordinate 0 to occur at the top of the
list. |
protected int |
convertYToRow(int y0)
Calculate the row number containing a particular Y coordinate, considering the Y coodrinate 0 to occur at the top of the
list. |
protected FocusListener |
createFocusListener()
Creates and returns the focus listener for this UI. |
protected ListDataListener |
createListDataListener()
Creates and returns the list data listener for this UI. |
protected ListSelectionListener |
createListSelectionListener()
Creates and returns the list selection listener for this UI. |
protected MouseInputListener |
createMouseInputListener()
Creates and returns the mouse input listener for this UI. |
protected PropertyChangeListener |
createPropertyChangeListener()
Creates and returns the property change listener for this UI. |
static ComponentUI |
createUI(JComponent c)
Creates a new BasicListUI for the component. |
Rectangle |
getCellBounds(JList l,
int index1,
int index2)
Calculate the bounds of a particular cell, considering the upper left corner of the list as the origin position (0,0) . |
Dimension |
getPreferredSize(JComponent c)
Gets the size this list would prefer to assume. |
protected int |
getRowHeight(int row)
Calculate the height of a particular row. |
Point |
indexToLocation(JList l,
int index)
Determines the location of the specified cell. |
protected void |
installDefaults()
Installs various default settings (mostly colors) from the UIDefaults into the JList |
protected void |
installKeyboardActions()
Installs keyboard actions for this UI in the JList . |
protected void |
installListeners()
Attaches all the listeners we have in the UI class to the JList , its model and its selection model. |
void |
installUI(JComponent c)
Installs the various aspects of the UI in the JList . |
int |
locationToIndex(JList l,
Point location)
Computes the index of a list cell given a point within the list. |
protected void |
maybeUpdateLayoutState()
Calls updateLayoutState() if updateLayoutStateNeeded
is nonzero, then resets updateLayoutStateNeeded to zero. |
void |
paint(Graphics g,
JComponent c)
Paints the list by repeatedly calling paintCell(java.awt.Graphics, int, java.awt.Rectangle, javax.swing.ListCellRenderer, javax.swing.ListModel, javax.swing.ListSelectionModel, int) for each visible
cell in the list. |
protected void |
paintCell(Graphics g,
int row,
Rectangle bounds,
ListCellRenderer rend,
ListModel data,
ListSelectionModel sel,
int lead)
Paints a single cell in the list. |
protected void |
selectNextIndex()
Selects the next list item and force it to be visible. |
protected void |
selectPreviousIndex()
Selects the previous list item and force it to be visible. |
protected void |
uninstallDefaults()
Resets to null those defaults which were installed in
installDefaults() |
protected void |
uninstallKeyboardActions()
Uninstalls keyboard actions for this UI in the JList . |
protected void |
uninstallListeners()
Detaches all the listeners we attached in installListeners() . |
void |
uninstallUI(JComponent c)
Uninstalls all the aspects of the UI which were installed in installUI(javax.swing.JComponent) . |
protected void |
updateLayoutState()
Recomputes the cellHeights , cellHeight , and cellWidth properties by examining the variouis properties of the
JList . |
Methods inherited from class javax.swing.plaf.ComponentUI |
---|
contains, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getMinimumSize, update |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final int modelChanged
protected static final int selectionModelChanged
protected static final int fontChanged
protected static final int fixedCellWidthChanged
protected static final int fixedCellHeightChanged
protected static final int prototypeCellValueChanged
protected static final int cellRendererChanged
protected FocusListener focusListener
protected ListDataListener listDataListener
protected ListSelectionListener listSelectionListener
protected MouseInputListener mouseInputListener
protected PropertyChangeListener propertyChangeListener
protected JList list
protected int cellHeight
-1
and cellHeights
is used instead.
protected int cellWidth
protected int[] cellHeights
fixedCellHeight
property of the list is not set. Otherwise
this field is null
and cellHeight
is used.
protected int updateLayoutStateNeeded
modelChanged
,
selectionModelChanged
,
fontChanged
,
fixedCellWidthChanged
,
fixedCellHeightChanged
,
prototypeCellValueChanged
,
cellRendererChanged
protected CellRendererPane rendererPane
CellRendererPane
that is used for painting.
Constructor Detail |
---|
public BasicListUI()
Method Detail |
---|
public static ComponentUI createUI(JComponent c)
c
- The component to create a UI for
protected int getRowHeight(int row)
cellHeight
, return it; otherwise return the specific row height
requested from the cellHeights
array. If the requested row
is invalid, return -1
.
row
- The row to get the height of
public Rectangle getCellBounds(JList l, int index1, int index2)
(0,0)
.
getCellBounds
in class ListUI
l
- Ignored; calculates over this.list
index1
- The first row to include in the boundsindex2
- The last row to incude in the bounds
index1
and index2
inclusive, or null
such a rectangle couldn't be calculated for the given indexes.protected int convertRowToY(int row)
0
to occur at the top of the
list.
row
- The row to calculate the Y coordinate of
-1
if
the specified row number is invalidprotected int convertYToRow(int y0)
0
to occur at the top of the
list.
y0
- The Y coordinate to calculate the row number for
-1
if the list model is emptyprotected void updateLayoutState()
cellHeights
, cellHeight
, and cellWidth
properties by examining the variouis properties of the
JList
.
protected void maybeUpdateLayoutState()
updateLayoutState()
if updateLayoutStateNeeded
is nonzero, then resets updateLayoutStateNeeded
to zero.
protected void installDefaults()
UIDefaults
into the JList
uninstallDefaults()
protected void uninstallDefaults()
null
those defaults which were installed in
installDefaults()
protected void installListeners()
JList
, its model and its selection model.
uninstallListeners()
protected void uninstallListeners()
installListeners()
.
protected void installKeyboardActions()
JList
.
protected void uninstallKeyboardActions()
JList
.
public void installUI(JComponent c)
JList
. In
particular, calls installDefaults()
, installListeners()
and installKeyboardActions()
. Also saves a reference to the
provided component, cast to a JList
.
installUI
in class ComponentUI
c
- The JList
to install the UI intoComponentUI.uninstallUI(javax.swing.JComponent)
,
JComponent.setUI(javax.swing.plaf.ComponentUI)
,
JComponent.updateUI()
public void uninstallUI(JComponent c)
installUI(javax.swing.JComponent)
. When finished uninstalling, drops the saved reference to
the JList
.
uninstallUI
in class ComponentUI
c
- Ignored; the UI is uninstalled from the JList
reference saved during the call to installUI(javax.swing.JComponent)
ComponentUI.installUI(javax.swing.JComponent)
,
JComponent.setUI(javax.swing.plaf.ComponentUI)
,
JComponent.updateUI()
public Dimension getPreferredSize(JComponent c)
getCellBounds(javax.swing.JList, int, int)
over the entire list.
getPreferredSize
in class ComponentUI
c
- Ignored; uses the saved JList
reference
protected void paintCell(Graphics g, int row, Rectangle bounds, ListCellRenderer rend, ListModel data, ListSelectionModel sel, int lead)
g
- The graphics context to paint inrow
- The row number to paintbounds
- The bounds of the cell to paint, assuming a coordinate
system beginning at (0,0)
in the upper left corner of the
listrend
- A cell renderer to paint withdata
- The data to provide to the cell renderersel
- A selection model to provide to the cell rendererlead
- The lead selection index of the listpublic void paint(Graphics g, JComponent c)
paintCell(java.awt.Graphics, int, java.awt.Rectangle, javax.swing.ListCellRenderer, javax.swing.ListModel, javax.swing.ListSelectionModel, int)
for each visible
cell in the list.
paint
in class ComponentUI
g
- The graphics context to paint withc
- Ignored; uses the saved JList
referencepublic int locationToIndex(JList l, Point location)
locationToIndex
in class ListUI
l
- the list which on which the computation is based onlocation
- the coordinates
-1
if the list model is emptypublic Point indexToLocation(JList l, int index)
ListUI
indexToLocation
in class ListUI
l
- the JList
for which this delegate object
provides the pluggable user interface.index
- the zero-based index of the cell whose location shall be
determined.
JList
coordinate system, or null
if cell
does not designate a valid cell.protected FocusListener createFocusListener()
protected ListDataListener createListDataListener()
protected ListSelectionListener createListSelectionListener()
protected MouseInputListener createMouseInputListener()
protected PropertyChangeListener createPropertyChangeListener()
protected void selectNextIndex()
protected void selectPreviousIndex()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |