public class BeanTable
extends javax.swing.JPanel
static public String editableProperties() { return "ID serverName active writeDirectory"; }or as an instance method with a no parameter contructor
MyClass() {} public String editableProperties() { return "ID serverName active writeDirectory"; }You may hide properties by listing them in a static method hiddenProperties() in the bean, eg :
static public String hiddenProperties() { return "hideThisProperty DDDirectory"; }The data can be made persistent through a PreferencesExt store. The width and order of the columns is persistent. The javabean class may add or delete properties, and the stored data will be reasonably intact.
PreferencesExt
,
Serialized FormModifier and Type | Class and Description |
---|---|
static class |
BeanTable.PropertyCol
Should be private.
|
protected class |
BeanTable.TableBeanModel
Does the reflection on the bean objects
|
protected class |
BeanTable.TableBeanModelInfo |
static class |
BeanTable.TestBean |
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
protected java.lang.Class |
beanClass |
protected java.util.List<java.lang.Object> |
beans |
protected boolean |
debug |
protected boolean |
debugBean |
protected boolean |
debugSelected |
protected boolean |
debugStore |
protected java.lang.Object |
innerbean |
protected javax.swing.JTable |
jtable |
protected BeanTable.TableBeanModel |
model |
protected javax.swing.JScrollPane |
scrollPane |
protected PreferencesExt |
store |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
BeanTable(java.lang.Class bc,
PreferencesExt pstore,
boolean canAddDelete) |
BeanTable(java.lang.Class bc,
PreferencesExt pstore,
boolean canAddDelete,
java.lang.String header,
java.lang.String tooltip,
java.lang.Object bean)
Constructor.
|
BeanTable(java.lang.Class bc,
PreferencesExt pstore,
java.lang.String header,
java.lang.String tooltip,
java.beans.BeanInfo info) |
Modifier and Type | Method and Description |
---|---|
void |
addBean(java.lang.Object bean) |
void |
addBeans(java.util.ArrayList<java.lang.Object> newBeans) |
void |
addListSelectionListener(javax.swing.event.ListSelectionListener l)
Add listener: ListSelectionEvent sent when a new row is selected
|
void |
clearBeans() |
void |
clearSelectedCells()
Set the currently selected cells (0, false or null).
|
void |
clearSelection() |
void |
fireBeanDataChanged(java.lang.Object bean)
Notifies the TableModel that the data in the specified bean has changed.
|
java.util.List |
getBeans() |
javax.swing.JTable |
getJTable() |
java.lang.Object |
getSelectedBean()
Get the currently selected bean, or null if none selected.
|
java.util.List |
getSelectedBeans()
Get the currently selected beans.
|
java.util.ArrayList<java.lang.Object> |
getSelectedCells()
Get the currently selected cells.
|
java.lang.String |
getToolTipText(java.awt.event.MouseEvent event) |
static void |
main(java.lang.String[] args) |
static void |
main2(java.lang.String[] args) |
void |
refresh() |
void |
removeListSelectionListener(javax.swing.event.ListSelectionListener l)
Remove listener
|
protected void |
restoreState()
Restore state from PreferencesExt
|
void |
saveState(boolean saveData)
Save state to the PreferencesExt.
|
void |
setBeans(java.util.List beans) |
void |
setColumnSelectionAllowed(boolean b)
Set the ColumnSelection is allowed (default false)
|
void |
setFontSize(int size) |
void |
setHeader(java.lang.String header) |
void |
setProperty(java.lang.String propertyName,
java.lang.String displayName,
java.lang.String toolTipText) |
void |
setPropertyEditable(java.lang.String propertyName,
boolean isHidden) |
void |
setPropertyHidden(java.lang.String propertyName,
boolean isHidden) |
void |
setSelectedBean(java.lang.Object bean)
Set which row is selected.
|
void |
setSelectedBeans(java.util.List want)
Set which rows are selected.
|
void |
setSelectionMode(int mode)
Set the selection mode on the JTable
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected java.lang.Class beanClass
protected java.lang.Object innerbean
protected PreferencesExt store
protected javax.swing.JTable jtable
protected javax.swing.JScrollPane scrollPane
protected java.util.List<java.lang.Object> beans
protected BeanTable.TableBeanModel model
protected boolean debug
protected boolean debugStore
protected boolean debugBean
protected boolean debugSelected
public BeanTable(java.lang.Class bc, PreferencesExt pstore, boolean canAddDelete)
public BeanTable(java.lang.Class bc, PreferencesExt pstore, java.lang.String header, java.lang.String tooltip, java.beans.BeanInfo info)
public BeanTable(java.lang.Class bc, PreferencesExt pstore, boolean canAddDelete, java.lang.String header, java.lang.String tooltip, java.lang.Object bean)
bc
- JavaBean classpstore
- store data in this PreferencesExt store.canAddDelete
- allow changes to the jtable - adds a New and Delete button to bottom panelheader
- optional header labeltooltip
- optional tooltip labelbean
- needed for inner classes to call reflected methods onpublic void setHeader(java.lang.String header)
public java.lang.String getToolTipText(java.awt.event.MouseEvent event)
getToolTipText
in class javax.swing.JComponent
public void setProperty(java.lang.String propertyName, java.lang.String displayName, java.lang.String toolTipText)
public void setPropertyEditable(java.lang.String propertyName, boolean isHidden)
public void setPropertyHidden(java.lang.String propertyName, boolean isHidden)
public void addListSelectionListener(javax.swing.event.ListSelectionListener l)
public void removeListSelectionListener(javax.swing.event.ListSelectionListener l)
public java.lang.Object getSelectedBean()
public java.util.List getSelectedBeans()
setSelectionMode(int)
public java.util.ArrayList<java.lang.Object> getSelectedCells()
setSelectionMode(int).
public void clearSelectedCells()
public void addBean(java.lang.Object bean)
public void addBeans(java.util.ArrayList<java.lang.Object> newBeans)
public void setBeans(java.util.List beans)
public void clearBeans()
public java.util.List getBeans()
public javax.swing.JTable getJTable()
public void setFontSize(int size)
public void setSelectionMode(int mode)
mode
- : JTable.setSelectionModeJTable.setSelectionMode(int)
public void setSelectedBean(java.lang.Object bean)
bean
- select this one; must be in the list.public void clearSelection()
public void setSelectedBeans(java.util.List want)
want
- select thesepublic void refresh()
public void setColumnSelectionAllowed(boolean b)
b
- allowed or notpublic void saveState(boolean saveData)
public void fireBeanDataChanged(java.lang.Object bean)
bean
- a bean that has changed.protected void restoreState()
public static void main2(java.lang.String[] args)
public static void main(java.lang.String[] args) throws java.io.IOException
java.io.IOException