org.lyra.Interface
Class PlayerCompactFrame

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 javax.swing.JFrame
                      extended by org.lyra.Interface.PlayerCompactFrame
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class PlayerCompactFrame
extends javax.swing.JFrame

Compact player interface without the song selection and management capabilities which exists in the regular interface. Used mostly as a status update capability then an information handler.

Version:
1.0.5, %Revision, 174%, %LastChangedDate, 27/10/12 3:33PM%
Author:
Martin Foster
See Also:
Serialized Form

Nested Class Summary
private  class PlayerCompactFrame.Interact
          The code separation from the user interface.
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
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
private  boolean BlindUpdate
           
private  javax.swing.JButton buttonFullscreen
           
private  javax.swing.JButton buttonNext
           
private  javax.swing.JButton buttonPlay
           
private  javax.swing.JButton buttonPrevious
           
private  javax.swing.JButton buttonStop
           
private  javax.swing.JButton buttonVolume
           
private  java.awt.Window Compact
           
private  Playback Control
           
private  java.util.Set<java.lang.String> Enabled
           
private  java.awt.Window Fullscreen
           
private  java.util.Map<java.lang.String,java.lang.String> Global
           
private  boolean Iconified
           
private  javax.swing.ImageIcon iconMute
           
private  javax.swing.ImageIcon iconPause
           
private  javax.swing.ImageIcon iconPlay
           
private  javax.swing.ImageIcon iconVolume
           
private  Status Information
           
private  PlayerCompactFrame.Interact Interface
           
private  javax.swing.JPanel jContentPane
           
private  javax.swing.JLabel labelText
           
private  javax.swing.JLabel labelTime
           
private  java.util.Map<java.lang.String,java.lang.String> Lang
           
private  Options Modes
           
private  javax.swing.JPanel panelControl
           
private  javax.swing.JPanel panelDetails
           
private  javax.swing.JPanel panelDisplay
           
private  javax.swing.JPanel panelText
           
private  javax.swing.JProgressBar progressTime
           
private static long serialVersionUID
           
private  java.awt.Frame Source
           
private static int TICKER_WIDTH
           
private  VolumeMenu VolumeControl
           
private  javax.swing.JPopupMenu VolumePopup
           
 
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.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
PlayerCompactFrame(Status information, Playback control, Options modes, Updater watcher, Pendulum clock, java.util.Map<java.lang.String,java.lang.String> lang, java.util.Map<java.lang.String,java.lang.String> global, java.awt.Window fullscreen)
          Primary constructor class for this component.
 
Method Summary
private  javax.swing.JButton getButtonFullscreen()
          This method initialises buttonFullscreen.
private  javax.swing.JButton getButtonNext()
          This method initialises buttonNext.
private  javax.swing.JButton getButtonPlay()
          This method initialises buttonPlay.
private  javax.swing.JButton getButtonPrevious()
          This method initialises buttonPrevious.
private  javax.swing.JButton getButtonStop()
          This method initialises buttonStop.
private  javax.swing.JButton getButtonVolume()
          This method initialises buttonVolume.
private  javax.swing.ImageIcon getIconMute()
          This method initialises iconMute.
private  javax.swing.ImageIcon getIconPause()
          This method initialises iconPause.
private  javax.swing.ImageIcon getIconPlay()
          This method initialises iconPlay.
private  javax.swing.ImageIcon getIconVolume()
          This method initialises iconVolume.
private  javax.swing.JPanel getJContentPane()
          This method initialises jContentPane.
private  javax.swing.JLabel getLabelText()
          This method initialises labelText.
private  javax.swing.JLabel getLabelTime()
          This method initialises labelTime.
private  javax.swing.JPanel getPanelControl()
          This method initialises panelControl.
private  javax.swing.JPanel getPanelDetails()
          This method initialises panelDetails.
private  javax.swing.JPanel getPanelDisplay()
          This method initialises panelDisplay.
private  javax.swing.JPanel getPanelText()
          This method initialises panelText.
private  javax.swing.JProgressBar getProgressTime()
          This method initialises progressTime.
private  void initFrame()
          This method establishes the baseline JFrame elements.
 void setButtonPlayAsPause()
          Adjusts the icon for the play button setting it to a pause icon.
 void setButtonPlayAsPlay()
          Adjusts the icon for the play button setting it to a play icon.
 void setButtonVolumeAsMute()
          Adjusts the icon for the volume button setting it to a mute icon.
 void setButtonVolumeAsVolume()
          Adjusts the icon for the play button setting it to a play icon.
 void setLabelText(java.lang.String title)
          Sets the display label for the title field.
 void setLabelTime(int elapsed, int total)
          Sets the display label for the time field.
 void setSliderProgress(int elapsed, int total)
          Sets the slider of the position and capacity.
 void setVisible(boolean state)
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, 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, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, 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, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, 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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, 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, 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

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

jContentPane

private javax.swing.JPanel jContentPane

panelControl

private javax.swing.JPanel panelControl

buttonPrevious

private javax.swing.JButton buttonPrevious

buttonPlay

private javax.swing.JButton buttonPlay

buttonStop

private javax.swing.JButton buttonStop

buttonNext

private javax.swing.JButton buttonNext

buttonVolume

private javax.swing.JButton buttonVolume

buttonFullscreen

private javax.swing.JButton buttonFullscreen

panelDisplay

private javax.swing.JPanel panelDisplay

progressTime

private javax.swing.JProgressBar progressTime

panelText

private javax.swing.JPanel panelText

labelText

private javax.swing.JLabel labelText

panelDetails

private javax.swing.JPanel panelDetails

labelTime

private javax.swing.JLabel labelTime

iconPlay

private javax.swing.ImageIcon iconPlay

iconPause

private javax.swing.ImageIcon iconPause

iconVolume

private javax.swing.ImageIcon iconVolume

iconMute

private javax.swing.ImageIcon iconMute

Information

private Status Information

Control

private Playback Control

Modes

private Options Modes

VolumeControl

private VolumeMenu VolumeControl

VolumePopup

private javax.swing.JPopupMenu VolumePopup

Lang

private java.util.Map<java.lang.String,java.lang.String> Lang

Global

private java.util.Map<java.lang.String,java.lang.String> Global

Enabled

private java.util.Set<java.lang.String> Enabled

Fullscreen

private java.awt.Window Fullscreen

Compact

private java.awt.Window Compact

Interface

private PlayerCompactFrame.Interact Interface

Iconified

private boolean Iconified

Source

private java.awt.Frame Source

BlindUpdate

private boolean BlindUpdate

TICKER_WIDTH

private static final int TICKER_WIDTH
See Also:
Constant Field Values
Constructor Detail

PlayerCompactFrame

public PlayerCompactFrame(Status information,
                          Playback control,
                          Options modes,
                          Updater watcher,
                          Pendulum clock,
                          java.util.Map<java.lang.String,java.lang.String> lang,
                          java.util.Map<java.lang.String,java.lang.String> global,
                          java.awt.Window fullscreen)
Primary constructor class for this component. Will pass on all of the necessary control elements to make it interactive.

Parameters:
information - State and status information for playback and modes.
control - Playback control instance.
modes - Options handler for control host Options.
watcher - Updater instance to receive changes in player state.
clock - Timer to keep players up to date.
lang - Language elements.
global - Global settings.
fullscreen - Window to revert to when going fullscreen.
Method Detail

initFrame

private void initFrame()
This method establishes the baseline JFrame elements.


getJContentPane

private javax.swing.JPanel getJContentPane()
This method initialises jContentPane. Establishes the baseline elements used in the interface display itself.

Returns:
javax.swing.JPanel

getPanelControl

private javax.swing.JPanel getPanelControl()
This method initialises panelControl. All of the control buttons for the compact interface are located here.

Returns:
javax.swing.JPanel

getPanelDisplay

private javax.swing.JPanel getPanelDisplay()
This method initialises panelDisplay. Displays all of the information for the playback status.

Returns:
javax.swing.JPanel

getProgressTime

private javax.swing.JProgressBar getProgressTime()
This method initialises progressTime. Non-interactive progress bar showing the elapsed time for a song.

Returns:
javax.swing.JProgressBar

getButtonPrevious

private javax.swing.JButton getButtonPrevious()
This method initialises buttonPrevious. Goes back a song in the current playlist if available.

Returns:
javax.swing.JButton

getButtonPlay

private javax.swing.JButton getButtonPlay()
This method initialises buttonPlay. Pauses or starts playback.

Returns:
javax.swing.JButton

getButtonStop

private javax.swing.JButton getButtonStop()
This method initialises buttonStop. Stops the playback.

Returns:
javax.swing.JButton

getButtonNext

private javax.swing.JButton getButtonNext()
This method initialises buttonNext. Moves to the next song in the current playlist.

Returns:
javax.swing.JButton

getButtonVolume

private javax.swing.JButton getButtonVolume()
This method initialises buttonVolume. Permits volume control.

Returns:
javax.swing.JButton

getPanelText

private javax.swing.JPanel getPanelText()
This method initialises panelText. Displays Song and Artist information in a ticker fashion.

Returns:
javax.swing.JPanel

getLabelText

private javax.swing.JLabel getLabelText()
This method initialises labelText. Used to display artist and song information.

Returns:
javax.swing.JLabel

getPanelDetails

private javax.swing.JPanel getPanelDetails()
This method initialises panelDetails. Time and song metrics.

Returns:
javax.swing.JPanel

getLabelTime

private javax.swing.JLabel getLabelTime()
This method initialises labelTime. Time run down.

Returns:
javax.swing.JLabel

getButtonFullscreen

private javax.swing.JButton getButtonFullscreen()
This method initialises buttonFullscreen. Returns the user to the full screen mode.

Returns:
javax.swing.JButton

getIconPlay

private javax.swing.ImageIcon getIconPlay()
This method initialises iconPlay.

Returns:
javax.swing.ImageIcon

getIconPause

private javax.swing.ImageIcon getIconPause()
This method initialises iconPause.

Returns:
javax.swing.ImageIcon

getIconVolume

private javax.swing.ImageIcon getIconVolume()
This method initialises iconVolume.

Returns:
javax.swing.ImageIcon

getIconMute

private javax.swing.ImageIcon getIconMute()
This method initialises iconMute.

Returns:
javax.swing.ImageIcon

setButtonPlayAsPause

public void setButtonPlayAsPause()
Adjusts the icon for the play button setting it to a pause icon.


setButtonPlayAsPlay

public void setButtonPlayAsPlay()
Adjusts the icon for the play button setting it to a play icon.


setButtonVolumeAsMute

public void setButtonVolumeAsMute()
Adjusts the icon for the volume button setting it to a mute icon.


setButtonVolumeAsVolume

public void setButtonVolumeAsVolume()
Adjusts the icon for the play button setting it to a play icon.


setSliderProgress

public void setSliderProgress(int elapsed,
                              int total)
Sets the slider of the position and capacity.

Parameters:
elapsed - Integer carrying current runtime.
total - Integer representing total play time.

setLabelText

public void setLabelText(java.lang.String title)
Sets the display label for the title field.

Parameters:
title - String carrying title name.

setLabelTime

public void setLabelTime(int elapsed,
                         int total)
Sets the display label for the time field.

Parameters:
elapsed - Integer carrying current runtime.
total - Integer representing total play time.

setVisible

public void setVisible(boolean state)
Overrides:
setVisible in class java.awt.Window