edu.iastate.metnet.metaomgraph
Class DualTablePanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by edu.iastate.metnet.metaomgraph.DualTablePanel
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class DualTablePanel
extends javax.swing.JPanel
implements java.awt.event.ActionListener

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
DualTablePanel(java.lang.Object[][] inactiveData, java.lang.Object[][] activeData, java.lang.String[] headers)
          Creates a dual-list panel with the given data in the inactive and active lists.
DualTablePanel(java.lang.Object[][] inactiveData, java.lang.String[] headers)
          Creates a dual-list panel with the given data in the inactive list, and a blank active list.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent arg0)
           
 void addChangeListener(javax.swing.event.ChangeListener addMe)
          Adds a ChangeListener to this DualListPanel.
 java.lang.Object[][] getActiveValues()
          Fetches the values in the active table
 java.lang.Object[][] getInactiveValues()
          Fetches the values in the inactive table
 boolean hasActiveValues()
          Determines if there are values in the active table.
 void hideColumn(int col)
          Hides the specified column from view.
static void main(java.lang.String[] args)
           
 void makeActive(int[] moveUs)
          Removes the specified rows from the inactive list and adds them to the active list.
 void makeInactive(int[] moveUs)
          Removes the specified rows from the active list and adds them to the inactive list.
 void setActiveLabel(java.lang.String label)
          Sets the label that appears above the active list.
 void setInactiveLabel(java.lang.String label)
          Sets the label that appears above the inactive list.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, 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, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, 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
 
Methods inherited from class java.awt.Container
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, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
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, hide, 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, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DualTablePanel

public DualTablePanel(java.lang.Object[][] inactiveData,
                      java.lang.String[] headers)
Creates a dual-list panel with the given data in the inactive list, and a blank active list.

Parameters:
inactiveData - The original data for the inactive list.

DualTablePanel

public DualTablePanel(java.lang.Object[][] inactiveData,
                      java.lang.Object[][] activeData,
                      java.lang.String[] headers)
Creates a dual-list panel with the given data in the inactive and active lists.

Parameters:
inactiveData - The original data for the inactive list.
activeData - The original data for the active list.
Method Detail

getActiveValues

public java.lang.Object[][] getActiveValues()
Fetches the values in the active table

Returns:
the values in the active table

getInactiveValues

public java.lang.Object[][] getInactiveValues()
Fetches the values in the inactive table

Returns:
the values in the inactive table

hideColumn

public void hideColumn(int col)
Hides the specified column from view. The values in the hidden column will still appear in the return value of getActiveValues() and getInactiveValues(). Once a column has been hidden, it cannot be reshown.

Parameters:
col - the column to hide

hasActiveValues

public boolean hasActiveValues()
Determines if there are values in the active table.

Returns:
true if there are values in the active table, false otherwise

setActiveLabel

public void setActiveLabel(java.lang.String label)
Sets the label that appears above the active list.

Parameters:
label - The text to use for the label.

setInactiveLabel

public void setInactiveLabel(java.lang.String label)
Sets the label that appears above the inactive list.

Parameters:
label - The text to use for the label.

addChangeListener

public void addChangeListener(javax.swing.event.ChangeListener addMe)
Adds a ChangeListener to this DualListPanel. A ChangeEvent will be fired whenever the user presses the add, remove, or reset buttons. The source of the fired change event will be the String "add", "remove", or "reset".

Parameters:
addMe - The ChangeListener to add.

makeActive

public void makeActive(int[] moveUs)
Removes the specified rows from the inactive list and adds them to the active list. An "add" change event is fired if at least one value is added to the active list.

Parameters:
moveUs - the rows of the inactive list to add to the active list

makeInactive

public void makeInactive(int[] moveUs)
Removes the specified rows from the active list and adds them to the inactive list. A "remove" change event is fired if at least one value is added to the inactive list.

Parameters:
moveUs - the rows of the active list to add to the inactive list

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent arg0)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

main

public static void main(java.lang.String[] args)