Class View
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
eu.bandm.music.applications.indisp.View
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
The GUI for the Barlow/Härpfer Indispensability demo.
Contains the Java-Swing widgets for user IO and the
check and construction for the NSM data object.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) class
GUI class which shows the selected meter as a circle of events and can mark the currently active event graphically.(package private) static enum
Selects between different sound methods.Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final JSlider
Slider to set the threshold of the indispensability value to be audible.static final int
Distance of the main circle to the margins of the clock panel.(package private) final View.ClockPanel
Right part of the toplevel GUI window.static final Color
Events which are currently active.static final Color
Color for the borders of circles.static final Color
Background ofmeterStatus
in case of a meter input error.static final Color
Events which are currently not active.static final Color
Background ofmeterStatus
in case of a valid meter input.(package private) boolean
Global flag whether an input error occured when interpreting the input tometer
.(package private) final JPanel
Left part of the toplevel GUI window.(package private) static final Stroke
Linetype for the borders of circles.(package private) final JTextField
Where to enter the source text of the NSM.(package private) final JTextField
Display the result of interpreting the source text inmeter
.(package private) final PlayPauseButton
Widget to hold and continue the playing process.static final int
Radius of the largest circle which represents an event.static final int
Radius of the smallest circle which represents an event.(package private) static final String
Displayed description text.(package private) final EnumPost
<View.sound> Widget to select the sound synthesis.(package private) final JTable
Output for the meter and the calculated indispensability values.(package private) final AbstractTableModel
Displays in three rows: the event index (zero-based), the metric weights, and the calculated indispensability values.(package private) final JSlider
Slider to set the tempo in "events per minute".(package private) final IntPost
Data point for overall volume.(package private) final IntPost.SwingSlider
Slider for overall volume.Fields inherited from class javax.swing.JComponent
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
accessibleContext, 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
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) boolean
GeterrorState
.static void
Create and start the GUI.(package private) boolean
Is called when user wants to change focus away from meter input textfield, or presses return.(package private) void
setMeterStatus
(boolean error, String text) Set the text of the GUI widgetmeterStatus
and the global error flag.(package private) void
showPhase
(int i) Called from the sequencer to update the GUI to the current event.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, getBaseline, getBaselineResizeBehavior, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
leftPart
Left part of the toplevel GUI window. -
clockPanel
Right part of the toplevel GUI window. -
meter
Where to enter the source text of the NSM. May contain digits 0..9, interspersed with blanks and comma. Hitting return or clicking a different widget will start interpretation. The Result is presented inmeterStatus
. When this result is an error message, all other input widgets are disabled. (The meter may be changed when playing.) -
meterStatus
Display the result of interpreting the source text inmeter
. When this result is an error message, all other input widgets are disabled. If is a valid NSM, the clock display is updated accordingly. -
playPauseButton
Widget to hold and continue the playing process. This process happens synchronuously in the output audio and in the graphics ofclockPanel
. -
soundSelect
Widget to select the sound synthesis. -
audible
Slider to set the threshold of the indispensability value to be audible. -
tempo
Slider to set the tempo in "events per minute". -
volumePost
Data point for overall volume. Rangs is 0.0 - 1.0. -
volumeSlider
Slider for overall volume. -
table
Output for the meter and the calculated indispensability values. -
SHORT_DESCRIPTION
Displayed description text.- See Also:
-
errorState
boolean errorStateGlobal flag whether an input error occured when interpreting the input tometer
. -
CIRCLE_INSETS
public static final int CIRCLE_INSETSDistance of the main circle to the margins of the clock panel.- See Also:
-
RADIUS_MIN
public static final int RADIUS_MINRadius of the smallest circle which represents an event.- See Also:
-
RADIUS_MAX
public static final int RADIUS_MAXRadius of the largest circle which represents an event.- See Also:
-
COLOR_ERROR_BG
Background ofmeterStatus
in case of a meter input error. -
COLOR_OKAY_BG
Background ofmeterStatus
in case of a valid meter input. -
COLOR_INACTIVE
Events which are currently not active. -
COLOR_ACTIVE
Events which are currently active. -
COLOR_BORDER
Color for the borders of circles. -
LINE_STROKE
Linetype for the borders of circles. -
tableModel
Displays in three rows: the event index (zero-based), the metric weights, and the calculated indispensability values.
-
-
Constructor Details
-
View
View()Main constructor which creates the whole application.
-
-
Method Details
-
reactToMeterInput
boolean reactToMeterInput()Is called when user wants to change focus away from meter input textfield, or presses return. -
getErrorState
boolean getErrorState()GeterrorState
. -
setMeterStatus
Set the text of the GUI widgetmeterStatus
and the global error flag. Clear the clock graphic in case of error. (The table is currently not cleared.) -
showPhase
void showPhase(int i) Called from the sequencer to update the GUI to the current event. -
main
Create and start the GUI.
-