CESE 1.4.7

com.simulogic.dataview
Class DataView

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 com.simulogic.dataview.DataView
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.ChangeListener, javax.swing.event.TreeModelListener

public class DataView
extends javax.swing.JPanel
implements javax.swing.event.TreeModelListener, javax.swing.event.ChangeListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener

Class that visualizes the content of DataStorage

See Also:
DataStorage, 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
static int GRAPHICS_CLIP
          Plotting is clipped to getClipBounds()
static int NO_CLIP
          No clipping is used
static int VIEW_CLIP
          Plotting is clipped to the view bounds
 
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
DataView(DataStorage s)
          Default constructor
 
Method Summary
 void fireSelectChannel(java.lang.Object channel)
          Fires PropertyChange event to inform listeners about channel selection
 void fullScale()
          Rescales the data to full scale
protected  java.awt.geom.Rectangle2D.Double getClip(java.awt.Graphics2D g2)
          Returns the plotting clip based on the current clipping strategy
protected  int getClipping()
           
 CursorProxy getCursors()
          Returns cursors
 java.awt.Color getGridColor()
          Getter for property gridColor.
 java.awt.geom.Rectangle2D.Double getScale()
          Returns current bounds of this view in user space
 java.awt.Color getScaleColor()
          Getter for property scaleColor.
 javax.swing.JScrollPane getScrollPane()
          Returns current scroll pane
 DataStorage getStorage()
          Returns current DataStorage
 java.awt.geom.AffineTransform getTransform()
          Returns current transform
 DataAxis getXAxis()
          Returns current X axis
 DataCorner getXCorner()
          Returns current X corner
 DataAxis getYAxis()
          Returns current Y axis
 DataCorner getYCorner()
          Returns current Y corner
 void mouseClicked(java.awt.event.MouseEvent evt)
           
 void mouseDragged(java.awt.event.MouseEvent evt)
           
 void mouseEntered(java.awt.event.MouseEvent evt)
           
 void mouseExited(java.awt.event.MouseEvent evt)
           
 void mouseMoved(java.awt.event.MouseEvent evt)
           
 void mousePressed(java.awt.event.MouseEvent evt)
           
 void mouseReleased(java.awt.event.MouseEvent evt)
           
 void mouseWheelMoved(java.awt.event.MouseWheelEvent evt)
           
 void paintComponent(java.awt.Graphics g)
          Overrides correspondent JComponent method
protected  void plotData(java.awt.Graphics2D g2)
          Plots data (as a set of channels) using plotChannel
protected  void plotGrid(java.awt.Graphics2D g2)
          Plots grid lines based on tick data from axis
 void printComponent(java.awt.Graphics g)
          Overrides correspondent JComponent method
 void renderPlot()
          Renders plot data
protected  void selectChannel(double x, double y)
          Selects a channel according to given coordinates
protected  void setClipping(int clipping)
           
 void setGridColor(java.awt.Color gridColor)
          Setter for property gridColor.
 void setScale(double xorig, double yorig, double xsize, double ysize)
          Changes the scale for the data
 void setScale(java.awt.geom.Rectangle2D.Double rsc)
          Changes the scale for the data
 void setScaleColor(java.awt.Color scaleColor)
          Setter for property scaleColor.
 void showPropertiesDialog()
          Creates and displays dialog for changing view propertis
 void stateChanged(javax.swing.event.ChangeEvent evt)
           
 void syncScale(DataView intr)
          Changes the scrolling position and scale of the given interior to scale and position of this interior
 void treeNodesChanged(javax.swing.event.TreeModelEvent evt)
           
 void treeNodesInserted(javax.swing.event.TreeModelEvent evt)
           
 void treeNodesRemoved(javax.swing.event.TreeModelEvent evt)
           
 void treeStructureChanged(javax.swing.event.TreeModelEvent evt)
           
 void zoomCentered(double factor)
          Zooms around center by a certain factor
 void zoomToCursors()
          Zooms in to a range between cursors 1..2
 
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, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, 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

NO_CLIP

public static final int NO_CLIP
No clipping is used

See Also:
Constant Field Values

VIEW_CLIP

public static final int VIEW_CLIP
Plotting is clipped to the view bounds

See Also:
Constant Field Values

GRAPHICS_CLIP

public static final int GRAPHICS_CLIP
Plotting is clipped to getClipBounds()

See Also:
Constant Field Values
Constructor Detail

DataView

public DataView(DataStorage s)
Default constructor

Parameters:
s - data storage
Method Detail

getStorage

public DataStorage getStorage()
Returns current DataStorage

Returns:
DataStorage

getScrollPane

public javax.swing.JScrollPane getScrollPane()
Returns current scroll pane

Returns:
scroll pane for the interior

getXCorner

public DataCorner getXCorner()
Returns current X corner

Returns:
X corner

getYCorner

public DataCorner getYCorner()
Returns current Y corner

Returns:
Y corner

getXAxis

public DataAxis getXAxis()
Returns current X axis

Returns:
X axis

getYAxis

public DataAxis getYAxis()
Returns current Y axis

Returns:
Y axis

getCursors

public CursorProxy getCursors()
Returns cursors

Returns:
cursors

getTransform

public java.awt.geom.AffineTransform getTransform()
Returns current transform

Returns:
transform

setClipping

protected void setClipping(int clipping)
Parameters:
clipping - The clipping to set.

getClipping

protected int getClipping()
Returns:
Returns the clipping.

getClip

protected java.awt.geom.Rectangle2D.Double getClip(java.awt.Graphics2D g2)
Returns the plotting clip based on the current clipping strategy

Parameters:
g2 - graphics to find the clip for
Returns:
current plot clip

plotGrid

protected final void plotGrid(java.awt.Graphics2D g2)
Plots grid lines based on tick data from axis

Parameters:
g2 - graphics

plotData

protected final void plotData(java.awt.Graphics2D g2)
Plots data (as a set of channels) using plotChannel

Parameters:
g2 - graphics

renderPlot

public final void renderPlot()
Renders plot data


selectChannel

protected void selectChannel(double x,
                             double y)
Selects a channel according to given coordinates

Parameters:
x - x coordinate
y - y coordinate

paintComponent

public void paintComponent(java.awt.Graphics g)
Overrides correspondent JComponent method

Overrides:
paintComponent in class javax.swing.JComponent
Parameters:
g - view graphics

printComponent

public void printComponent(java.awt.Graphics g)
Overrides correspondent JComponent method

Overrides:
printComponent in class javax.swing.JComponent
Parameters:
g - view graphics

getScale

public java.awt.geom.Rectangle2D.Double getScale()
Returns current bounds of this view in user space

Returns:
view scale

setScale

public void setScale(double xorig,
                     double yorig,
                     double xsize,
                     double ysize)
Changes the scale for the data

Parameters:
xorig - new x axis start value
yorig - new y axis start value
xsize - new x axis interval
ysize - new y axis interval

setScale

public void setScale(java.awt.geom.Rectangle2D.Double rsc)
Changes the scale for the data

Parameters:
rsc - area in the DataView

zoomToCursors

public void zoomToCursors()
Zooms in to a range between cursors 1..2


zoomCentered

public void zoomCentered(double factor)
Zooms around center by a certain factor

Parameters:
factor - zoom factor. If positive, zooms in; if negative, zooms out

fullScale

public void fullScale()
Rescales the data to full scale


syncScale

public void syncScale(DataView intr)
Changes the scrolling position and scale of the given interior to scale and position of this interior

Parameters:
intr - DataView to be synced with this interior

getScaleColor

public java.awt.Color getScaleColor()
Getter for property scaleColor.

Returns:
Value of property scaleColor.

setScaleColor

public void setScaleColor(java.awt.Color scaleColor)
Setter for property scaleColor.

Parameters:
scaleColor - New value of property scaleColor.

getGridColor

public java.awt.Color getGridColor()
Getter for property gridColor.

Returns:
Value of property gridColor.

setGridColor

public void setGridColor(java.awt.Color gridColor)
Setter for property gridColor.

Parameters:
gridColor - New value of property gridColor.

showPropertiesDialog

public void showPropertiesDialog()
Creates and displays dialog for changing view propertis


fireSelectChannel

public void fireSelectChannel(java.lang.Object channel)
Fires PropertyChange event to inform listeners about channel selection

Parameters:
channel - new selected channel

mouseClicked

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

mousePressed

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

mouseReleased

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

mouseDragged

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

mouseMoved

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

mouseEntered

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

mouseExited

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

mouseWheelMoved

public void mouseWheelMoved(java.awt.event.MouseWheelEvent evt)
Specified by:
mouseWheelMoved in interface java.awt.event.MouseWheelListener
Parameters:
evt -

stateChanged

public void stateChanged(javax.swing.event.ChangeEvent evt)
Specified by:
stateChanged in interface javax.swing.event.ChangeListener
Parameters:
evt -

treeStructureChanged

public void treeStructureChanged(javax.swing.event.TreeModelEvent evt)
Specified by:
treeStructureChanged in interface javax.swing.event.TreeModelListener
Parameters:
evt -

treeNodesInserted

public void treeNodesInserted(javax.swing.event.TreeModelEvent evt)
Specified by:
treeNodesInserted in interface javax.swing.event.TreeModelListener
Parameters:
evt -

treeNodesRemoved

public void treeNodesRemoved(javax.swing.event.TreeModelEvent evt)
Specified by:
treeNodesRemoved in interface javax.swing.event.TreeModelListener
Parameters:
evt -

treeNodesChanged

public void treeNodesChanged(javax.swing.event.TreeModelEvent evt)
Specified by:
treeNodesChanged in interface javax.swing.event.TreeModelListener
Parameters:
evt -

CESE 1.4.7

Copyright (c) 1999 - 2007 Cell Electrophysiology Simulation Environment (CESE). All rights reserved.