hades.styx
Class WaveformViewer

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Frame
                  extended byjavax.swing.JFrame
                      extended byhades.styx.WaveformViewer
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.event.ComponentListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.event.KeyListener, java.awt.MenuContainer, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class WaveformViewer
extends javax.swing.JFrame
implements java.awt.event.AdjustmentListener, java.awt.event.ComponentListener, java.awt.event.ActionListener, java.awt.event.KeyListener

WaveformViewer: the Hades waveform viewer. This class contains both the GUI and a lot of the application code to display and manage waveform data.

See Also:
Serialized Form

Nested Class Summary
(package private)  class WaveformViewer.ShowSignalNameListener
          inner class to display full signal names in the status panel.
(package private)  class WaveformViewer.WavePanel
           
 
Nested classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
(package private)  javax.swing.JMenuItem aboutMI
           
(package private)  javax.swing.JMenuItem addSpacerMI
           
(package private)  javax.swing.JMenuItem binaryFormatMI
           
(package private)  javax.swing.JPanel buttonPanel
           
(package private)  javax.swing.JMenuItem clearWavesMI
           
(package private)  javax.swing.JMenuItem closeMI
           
(package private)  javax.swing.JPanel controlPanel
           
(package private)  javax.swing.JMenuItem decimalFormatMI
           
(package private)  javax.swing.JMenuItem deleteAllWavesMI
           
(package private)  javax.swing.JMenuItem deleteWaveMI
           
 double deltat
           
(package private)  javax.swing.JMenu editMenu
           
(package private)  Editor editor
           
(package private)  javax.swing.JMenuItem exitMI
           
(package private)  javax.swing.JMenu fileMenu
           
(package private)  javax.swing.JMenu formatMenu
           
(package private)  StatusMessage helper
           
(package private)  javax.swing.JMenu helpMenu
           
(package private)  javax.swing.JMenuItem hexFormatMI
           
(package private) static double INITIAL_END_TIME
           
(package private)  javax.swing.JMenuItem keysMI
           
(package private)  JImageButton moveDownButton
           
(package private)  JImageButton moveUpButton
           
 int n
           
(package private)  NameCanvas nameCanvas
           
(package private)  javax.swing.JMenuItem openMI
           
(package private)  javax.swing.JMenu optionsMenu
           
(package private)  javax.swing.JMenuItem saveAsMI
           
(package private)  javax.swing.JMenuItem savePPMMI
           
(package private)  javax.swing.JLabel scaleLabel
           
(package private)  javax.swing.JMenu searchMenu
           
(package private)  JStatusCanvas statusCanvas
           
(package private)  JImageButton swapButton
           
 double tend
           
 double tges
           
(package private)  javax.swing.JLabel timeLabel
           
(package private)  TimePanel timePanel
           
 double tleft
           
(package private)  Transformation trafo
           
 double tright
           
 double tstart
           
(package private)  javax.swing.JMenuItem updateWavesMI
           
(package private)  javax.swing.JLabel valueLabel
           
(package private) static java.lang.String versionString
           
(package private)  WaveCanvas waveCanvas
           
(package private)  javax.swing.JPanel wavePanel
           
 int x
           
(package private)  Xscroller xscroller
           
(package private)  Yscroller yscroller
           
(package private)  JImageButton zoom025Button
           
(package private)  JImageButton zoom050Button
           
(package private)  JImageButton zoom200Button
           
(package private)  JImageButton zoom400Button
           
(package private)  JImageButton zoomAreaButton
           
(package private)  JImageButton zoomEndButton
           
(package private)  JImageButton zoomFitButton
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Window
 
Fields inherited from class java.awt.Container
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
WaveformViewer()
           
 
Method Summary
 void about()
           
 void actionPerformed(java.awt.event.ActionEvent e)
           
 Waveform addSignal(Signal signal)
          create a Waveform object for 'signal'.
 void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
           
(package private)  void buildMenuCallbacks()
           
 void buildMenus()
           
 void buildWavePanel()
           
 void clearWaveData()
           
 void componentHidden(java.awt.event.ComponentEvent e)
           
 void componentMoved(java.awt.event.ComponentEvent e)
           
 void componentResized(java.awt.event.ComponentEvent e)
           
 void componentShown(java.awt.event.ComponentEvent e)
           
 void deleteAllWaveforms()
           
 void delWaveform(Waveform w)
           
 void doDumpData()
           
 void doDumpData(java.io.OutputStream os)
           
 void doExportPPM()
           
 void doReadData()
           
 void doReadData(java.io.InputStream is)
           
 void doShowHelpOnKeys()
           
static void err(java.lang.String s)
           
 WaveCanvas getWaveCanvas()
           
 void keyPressed(java.awt.event.KeyEvent evt)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
static void main(java.lang.String[] argv)
           
 void msg(java.lang.String s)
           
 void redraw()
           
 void setEditor(Editor e)
           
 void setStatusMessage(StatusMessage helper)
           
 void update()
           
 void updateTrafo()
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

versionString

static final java.lang.String versionString
See Also:
Constant Field Values

INITIAL_END_TIME

static final double INITIAL_END_TIME
See Also:
Constant Field Values

wavePanel

javax.swing.JPanel wavePanel

controlPanel

javax.swing.JPanel controlPanel

buttonPanel

javax.swing.JPanel buttonPanel

timeLabel

javax.swing.JLabel timeLabel

scaleLabel

javax.swing.JLabel scaleLabel

valueLabel

javax.swing.JLabel valueLabel

trafo

Transformation trafo

timePanel

TimePanel timePanel

waveCanvas

WaveCanvas waveCanvas

nameCanvas

NameCanvas nameCanvas

xscroller

Xscroller xscroller

yscroller

Yscroller yscroller

statusCanvas

JStatusCanvas statusCanvas

fileMenu

javax.swing.JMenu fileMenu

editMenu

javax.swing.JMenu editMenu

searchMenu

javax.swing.JMenu searchMenu

optionsMenu

javax.swing.JMenu optionsMenu

helpMenu

javax.swing.JMenu helpMenu

formatMenu

javax.swing.JMenu formatMenu

openMI

javax.swing.JMenuItem openMI

saveAsMI

javax.swing.JMenuItem saveAsMI

savePPMMI

javax.swing.JMenuItem savePPMMI

closeMI

javax.swing.JMenuItem closeMI

exitMI

javax.swing.JMenuItem exitMI

updateWavesMI

javax.swing.JMenuItem updateWavesMI

clearWavesMI

javax.swing.JMenuItem clearWavesMI

deleteWaveMI

javax.swing.JMenuItem deleteWaveMI

deleteAllWavesMI

javax.swing.JMenuItem deleteAllWavesMI

addSpacerMI

javax.swing.JMenuItem addSpacerMI

binaryFormatMI

javax.swing.JMenuItem binaryFormatMI

decimalFormatMI

javax.swing.JMenuItem decimalFormatMI

hexFormatMI

javax.swing.JMenuItem hexFormatMI

aboutMI

javax.swing.JMenuItem aboutMI

keysMI

javax.swing.JMenuItem keysMI

swapButton

JImageButton swapButton

moveUpButton

JImageButton moveUpButton

moveDownButton

JImageButton moveDownButton

zoom400Button

JImageButton zoom400Button

zoom200Button

JImageButton zoom200Button

zoomFitButton

JImageButton zoomFitButton

zoomAreaButton

JImageButton zoomAreaButton

zoom050Button

JImageButton zoom050Button

zoom025Button

JImageButton zoom025Button

zoomEndButton

JImageButton zoomEndButton

helper

StatusMessage helper

editor

Editor editor

x

public int x

n

public int n

tleft

public double tleft

tright

public double tright

tend

public double tend

tstart

public double tstart

deltat

public double deltat

tges

public double tges
Constructor Detail

WaveformViewer

public WaveformViewer()
Method Detail

addSignal

public Waveform addSignal(Signal signal)
create a Waveform object for 'signal'. This method acts as a simple WaveformFactory and will try to use Waveform subclasses matching the Signal argument.


delWaveform

public void delWaveform(Waveform w)

deleteAllWaveforms

public void deleteAllWaveforms()

setEditor

public void setEditor(Editor e)

clearWaveData

public void clearWaveData()

getWaveCanvas

public WaveCanvas getWaveCanvas()

updateTrafo

public void updateTrafo()

componentShown

public void componentShown(java.awt.event.ComponentEvent e)
Specified by:
componentShown in interface java.awt.event.ComponentListener

componentHidden

public void componentHidden(java.awt.event.ComponentEvent e)
Specified by:
componentHidden in interface java.awt.event.ComponentListener

componentMoved

public void componentMoved(java.awt.event.ComponentEvent e)
Specified by:
componentMoved in interface java.awt.event.ComponentListener

componentResized

public void componentResized(java.awt.event.ComponentEvent e)
Specified by:
componentResized in interface java.awt.event.ComponentListener

msg

public void msg(java.lang.String s)

buildWavePanel

public void buildWavePanel()

buildMenus

public void buildMenus()

buildMenuCallbacks

void buildMenuCallbacks()

setStatusMessage

public void setStatusMessage(StatusMessage helper)

adjustmentValueChanged

public void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
Specified by:
adjustmentValueChanged in interface java.awt.event.AdjustmentListener

keyPressed

public void keyPressed(java.awt.event.KeyEvent evt)
Specified by:
keyPressed in interface java.awt.event.KeyListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)
Specified by:
keyTyped in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent e)
Specified by:
keyReleased in interface java.awt.event.KeyListener

actionPerformed

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

update

public void update()

redraw

public void redraw()

about

public void about()

doShowHelpOnKeys

public void doShowHelpOnKeys()

doDumpData

public void doDumpData()

doDumpData

public void doDumpData(java.io.OutputStream os)

doExportPPM

public void doExportPPM()

doReadData

public void doReadData()

doReadData

public void doReadData(java.io.InputStream is)

err

public static void err(java.lang.String s)

main

public static void main(java.lang.String[] argv)
                 throws java.lang.Exception
Throws:
java.lang.Exception