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) classGUI class which shows the selected meter as a circle of events and can mark the currently active event graphically.(package private) static enumSelects between different sound methods.Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescription(package private) final JSliderSlider to set the threshold of the indispensability value to be audible.static final intDistance of the main circle to the margins of the clock panel.(package private) final View.ClockPanelRight part of the toplevel GUI window.static final ColorEvents which are currently active.static final ColorColor for the borders of circles.static final ColorBackground ofmeterStatusin case of a meter input error.static final ColorEvents which are currently not active.static final ColorBackground ofmeterStatusin case of a valid meter input.(package private) booleanGlobal flag whether an input error occured when interpreting the input tometer.(package private) final JPanelLeft part of the toplevel GUI window.(package private) static final StrokeLinetype for the borders of circles.(package private) final JTextFieldWhere to enter the source text of the NSM.(package private) final JTextFieldDisplay the result of interpreting the source text inmeter.(package private) final PlayPauseButtonWidget to hold and continue the playing process.static final intRadius of the largest circle which represents an event.static final intRadius of the smallest circle which represents an event.(package private) static final StringDisplayed description text.(package private) final EnumPost<View.sound> Widget to select the sound synthesis.(package private) final JTableOutput for the meter and the calculated indispensability values.(package private) final AbstractTableModelDisplays in three rows: the event index (zero-based), the metric weights, and the calculated indispensability values.(package private) final JSliderSlider to set the tempo in "events per minute".(package private) final IntPostData point for overall volume.(package private) final IntPost.SwingSliderSlider 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_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields 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) booleanGeterrorState.static voidCreate and start the GUI.(package private) booleanIs called when user wants to change focus away from meter input textfield, or presses return.(package private) voidsetMeterStatus(boolean error, String text) Set the text of the GUI widgetmeterStatusand the global error flag.(package private) voidshowPhase(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, updateUIMethods 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, updateMethods 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, validateTreeMethods 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 ofmeterStatusin case of a meter input error. -
COLOR_OKAY_BG
Background ofmeterStatusin 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 widgetmeterStatusand 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.
-