org.jscience.awt.util
Class BaseUI

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by org.jscience.awt.util.CloseableFrame
                      extended by org.jscience.awt.util.BaseUI
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public abstract class BaseUI
extends CloseableFrame

This class provides some base functionality required by many of the audio processor devices of section two. It provides storage for an AbstractAudio device instance, extends CloseableFrame to give the UI a closeable window in which run, provides various methods for creating simple controls and indicators with a common look and a GridBagLayout layout manager helper function to aid in the simulated front panel layout process.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  AbstractAudio aa
          DOCUMENT ME!
 
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.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
BaseUI(java.lang.String title, AbstractAudio aa)
          BaseUI Class Constructor
 
Method Summary
static void addDefaultComponent(java.awt.Panel p, java.awt.Component c, java.awt.GridBagLayout gbl, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
          GridBagLayout Helper Function This method is called when adding a component to a UI using a GridBagLayout.
protected  void configPot(Pot p, int knobSize, java.lang.String label, java.lang.String labelsString)
          Configure the Pot instance passed in to a come look
protected  RoundLED createLED(java.awt.Color color, int mode, boolean state)
          Create and configure a RoundLED for use in a UI
protected  Pot createPot(int knobSize, java.lang.String label, java.lang.String labelsString)
          Create and configure a Pot for use in the UI
protected  RealValuedPot createPot(int knobSize, java.lang.String label, java.lang.String labelsString, double maxValue, double minValue)
          Create and configure a RealValuedPot for use in the UI
protected  IntValuedPot createPot(int knobSize, java.lang.String label, java.lang.String labelsString, int maxValue, int minValue)
          Create and configure an IntValuedPot for use in the UI
static void positionAudioDevices()
          Position all devices so that they do not overlay on the screen
 
Methods inherited from class org.jscience.awt.util.CloseableFrame
registerCloseListener, windowIsClosing
 
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, 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, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, 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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, 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, getMousePosition, 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, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, 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, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

aa

protected AbstractAudio aa
DOCUMENT ME!

Constructor Detail

BaseUI

public BaseUI(java.lang.String title,
              AbstractAudio aa)
BaseUI Class Constructor

Parameters:
title - title is the title to be placed in the window in which the UI runs.
aa - aa is the instance of the AbstractAudio device associated with the UI.
Method Detail

addDefaultComponent

public static void addDefaultComponent(java.awt.Panel p,
                                       java.awt.Component c,
                                       java.awt.GridBagLayout gbl,
                                       java.awt.GridBagConstraints gbc,
                                       int x,
                                       int y,
                                       int w,
                                       int h)
GridBagLayout Helper Function This method is called when adding a component to a UI using a GridBagLayout.

Parameters:
p - p is the panel onto which the component is added
c - c is the component being added
gbl - gbl is the instance of the layout manager
gbc - gbc is the constraint associated with adding this component
x - x is the x position within the panel to add the component
y - y is the y position within the panel to add the component
w - w is the width the added component should take up in the layout
h - h is the height the added component should take up in the layout.

createPot

protected Pot createPot(int knobSize,
                        java.lang.String label,
                        java.lang.String labelsString)
Create and configure a Pot for use in the UI

Parameters:
knobSize - knobSize is the radius of the knob in pixels
label - label is the caption to label the pot with
labelsString - labelsString is the String of comma delimited strings used to label the pot tic marks
Returns:
Pot configured as specified

createPot

protected RealValuedPot createPot(int knobSize,
                                  java.lang.String label,
                                  java.lang.String labelsString,
                                  double maxValue,
                                  double minValue)
Create and configure a RealValuedPot for use in the UI

Parameters:
knobSize - knobSize is the radius of the knob in pixels
label - label is the caption to label the pot with
labelsString - labelsString is the String of comma delimited strings used to label the pot tic marks
maxValue - maxValue is the value the pot should return at the maximum position.
minValue - minValue is the value the pot should return at the minimum position.
Returns:
RealValuedPot configured as specified

createPot

protected IntValuedPot createPot(int knobSize,
                                 java.lang.String label,
                                 java.lang.String labelsString,
                                 int maxValue,
                                 int minValue)
Create and configure an IntValuedPot for use in the UI

Parameters:
knobSize - knobSize is the radius of the knob in pixels
label - label is the caption to label the pot with
labelsString - labelsString is the String of comma delimited strings used to label the pot tic marks
maxValue - maxValue is the value the pot should return at the maximum position.
minValue - minValue is the value the pot should return at the minimum position.
Returns:
IntValuedPot configured as specified

configPot

protected void configPot(Pot p,
                         int knobSize,
                         java.lang.String label,
                         java.lang.String labelsString)
Configure the Pot instance passed in to a come look

Parameters:
p - p is the Pot instance to configure
knobSize - knobSize is the radius of the knob in pixels
label - label is the caption to label the pot with
labelsString - labelsString is the String of comma delimited strings used to label the pot tic marks

createLED

protected RoundLED createLED(java.awt.Color color,
                             int mode,
                             boolean state)
Create and configure a RoundLED for use in a UI

Parameters:
color - color is the color the LED should be
mode - mode is the mode to set the LED in. See LEDBase.java.
state - state is the on/off state of the LED. True turns the LED on, false turns it off.
Returns:
DOCUMENT ME!

positionAudioDevices

public static void positionAudioDevices()
Position all devices so that they do not overlay on the screen