edu.udo.cs.yale.gui.plotter
Class PlotterPanel

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.udo.cs.yale.gui.plotter.PlotterPanel
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class PlotterPanel
extends javax.swing.JPanel
implements java.awt.event.MouseMotionListener, java.awt.event.MouseListener

This is the main component for all data or statistics plotters. Depending on the selected plotter type the options panel part is created or adapted. The option panel usually contains selectors for up to three axis and other options depending on the plotter like a plot amount slider or option buttons.

Version:
$Id: PlotterPanel.java,v 1.33 2006/09/24 13:05:06 ingomierswa Exp $
Author:
Ingo Mierswa, Simon Fischer
See Also:
Serialized Form

Nested Class Summary
private static class PlotterPanel.LineStyleCellRenderer
          The line style rendered for the legend (or key).
 
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
private  java.util.LinkedHashMap<java.lang.String,java.lang.Class> availablePlotters
          Indicates if the plotter will be available.
private  javax.swing.JLabel coordinatesLabel
          The label which shows the coordinates in data space.
static java.util.LinkedHashMap<java.lang.String,java.lang.Class> DATA_SET_PLOTTER_SELECTION
           
private  DataTable dataTable
          The current data table object which backs up the plotting.
static int DEFAULT_MAX_NUMBER_OF_DATA_POINTS
           
private  javax.swing.JPanel mainPanel
          The main panel containing the axes selection panel and the actual plotter component.
private  Plotter plotter
          The currently selected plotter object.
static java.lang.String[] PLOTTER_NAMES
          Known plotter names.
private static java.lang.Class[] PLOTTERS
          Known plotters.
private  java.awt.Point pressStart
          The point at which a mouse pressing started.
private  java.lang.String selectedPlotter
          The selected plotter type.
private static long serialVersionUID
           
static java.util.LinkedHashMap<java.lang.String,java.lang.Class> WEIGHT_PLOTTER_SELECTION
           
 
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
PlotterPanel(DataTable dataTable)
          Creates a new plotter panel based on the given DataTable object.
 
Method Summary
 void addPlotter(java.lang.String name, java.lang.Class clazz)
           
private  java.awt.Component getPanel()
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void removePlotter(java.lang.String name)
           
 void setDataTable(DataTable dataTable)
           
 void setPlotterSelection(java.util.LinkedHashMap<java.lang.String,java.lang.Class> availablePlotters)
           
private  void setSelectedPlotter(java.lang.String name)
           
private  void update()
           
 
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
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

DEFAULT_MAX_NUMBER_OF_DATA_POINTS

public static final int DEFAULT_MAX_NUMBER_OF_DATA_POINTS
See Also:
Constant Field Values

PLOTTER_NAMES

public static final java.lang.String[] PLOTTER_NAMES
Known plotter names.


PLOTTERS

private static final java.lang.Class[] PLOTTERS
Known plotters.


WEIGHT_PLOTTER_SELECTION

public static java.util.LinkedHashMap<java.lang.String,java.lang.Class> WEIGHT_PLOTTER_SELECTION

DATA_SET_PLOTTER_SELECTION

public static java.util.LinkedHashMap<java.lang.String,java.lang.Class> DATA_SET_PLOTTER_SELECTION

plotter

private Plotter plotter
The currently selected plotter object.


dataTable

private DataTable dataTable
The current data table object which backs up the plotting.


coordinatesLabel

private javax.swing.JLabel coordinatesLabel
The label which shows the coordinates in data space. Not supported by all plotters.


pressStart

private java.awt.Point pressStart
The point at which a mouse pressing started.


selectedPlotter

private java.lang.String selectedPlotter
The selected plotter type.


mainPanel

private javax.swing.JPanel mainPanel
The main panel containing the axes selection panel and the actual plotter component.


availablePlotters

private java.util.LinkedHashMap<java.lang.String,java.lang.Class> availablePlotters
Indicates if the plotter will be available.

Constructor Detail

PlotterPanel

public PlotterPanel(DataTable dataTable)
Creates a new plotter panel based on the given DataTable object.

Method Detail

setDataTable

public void setDataTable(DataTable dataTable)

setPlotterSelection

public void setPlotterSelection(java.util.LinkedHashMap<java.lang.String,java.lang.Class> availablePlotters)

addPlotter

public void addPlotter(java.lang.String name,
                       java.lang.Class clazz)

removePlotter

public void removePlotter(java.lang.String name)

setSelectedPlotter

private void setSelectedPlotter(java.lang.String name)

update

private void update()

getPanel

private java.awt.Component getPanel()

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener


Copyright © 2001-2006