Package com.tagtraum.beatunes
Class MainWindow
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- com.tagtraum.beatunes.MainWindow
-
- All Implemented Interfaces:
ApplicationComponent<BeaTunes>
,ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
public class MainWindow extends JFrame implements ApplicationComponent<BeaTunes>
Main application window.- Author:
- Hendrik Schreiber
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrame
-
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrame
-
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
-
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
-
Fields inherited from class javax.swing.JFrame
accessibleContext, 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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
-
Constructor Summary
Constructors Constructor Description MainWindow(BeaTunes application)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description JComponent
$$$getRootComponent$$$()
AnalysisQueue
getAnalysisQueue()
Returns the analysis table.BeaTunes
getApplication()
Returns the main application component.DetailView
getDetailView()
String
getId()
Unique id for each instance of this object.JPanel
getLowerLeftButtonPanel()
Deprecated.JPanel
getLowerRightButtonPanel()
Deprecated.MasterButtonPanel
getMasterButtonPanel()
Panel containing button that allow switching between main/master views like Inspection and Library.PlayListTree
getPlayListTree()
Returns the main selection tree (sidebar).SearchTextField
getSearchTextField()
Returns the main search/filter field.SongTable
getSongTable()
Returns the main song table.JLabel
getStatusLabel()
void
init()
Initializes this component and its sub-components.boolean
isFullScreen()
Are we showing the app in full screen mode?boolean
isSideBarVisible()
Indicates whether the side bar (e.g.boolean
isStatusBarVisible()
Indicates whether the status bar is visible.void
popDetailView()
Pops aDetailView
from the stack and restores it.void
pushDetailView(DetailView detailView)
Pushes a newDetailView
onto the detailview stack.void
restoreMasterButtonState()
Restores the last state of the master button panel.void
select(PlayList playList, long id)
Selects the given playlist and also the given song in it.void
select(Object object)
In the sidebar/tree, selects the tree node that has the given object as the user object of itsPlayListTreeModel.UO
.void
selectCharts()
Equivalent to clicking on the Charts button in the master button panel on the left.void
selectInspection()
Equivalent to clicking on the Inspection button in the master button panel on the left.void
selectLibrary()
Equivalent to clicking on the Library button in the master button panel on the left.void
selectTaskQueue()
Equivalent to clicking on the Task Queue button in the master button panel on the left.void
setApplication(BeaTunes application)
Sets the main application component.void
setCoverPanelDelay(int seconds)
Sets the amount of seconds that shall pass until the "screen saver" artwork is shown.void
setDetailView(DetailView detailView)
Sets the detail view.void
setDetailView(TreePath selectionPath)
SetDetailView
suitable for the given selection path from thePlayListTree
.void
setFullScreen(boolean fullScreen)
Turns full screen mode on or off.void
setMasterComponent(Component masterComponent)
Sets the master component.void
setSideBarVisible(boolean visible)
void
setStatusBarVisible(boolean show)
Shows/hides the status bar.void
setVisible(boolean b)
void
shutdown()
Shuts down this component and its sub-components.void
updateDetailViewStatusLabel()
Updates the main window's statuslabel, callingDetailView.getStatusLabel()
of the currentDetailView
.-
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, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, 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, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, 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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, 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
-
-
-
-
Constructor Detail
-
MainWindow
public MainWindow(BeaTunes application)
- Parameters:
application
- beatunes
-
-
Method Detail
-
selectTaskQueue
public void selectTaskQueue()
Equivalent to clicking on the Task Queue button in the master button panel on the left.- See Also:
selectCharts()
,selectInspection()
,selectLibrary()
-
selectInspection
public void selectInspection()
Equivalent to clicking on the Inspection button in the master button panel on the left.- See Also:
selectCharts()
,selectLibrary()
,selectTaskQueue()
-
selectLibrary
public void selectLibrary()
Equivalent to clicking on the Library button in the master button panel on the left.- See Also:
selectCharts()
,selectInspection()
,selectTaskQueue()
-
selectCharts
public void selectCharts()
Equivalent to clicking on the Charts button in the master button panel on the left.- See Also:
selectInspection()
,selectLibrary()
,selectTaskQueue()
-
setCoverPanelDelay
public void setCoverPanelDelay(int seconds)
Sets the amount of seconds that shall pass until the "screen saver" artwork is shown. To set this value persistently, please useGeneralPreferences.setCoverPanelDelay(int)
.- Parameters:
seconds
- delay in seconds
-
select
public void select(PlayList playList, long id)
Selects the given playlist and also the given song in it. If a search term is set, it is cleared.- Parameters:
playList
- playlistid
- song id- See Also:
SongTable.select(AudioSong)
,SongTable.select(long)
-
select
public void select(Object object)
In the sidebar/tree, selects the tree node that has the given object as the user object of itsPlayListTreeModel.UO
.
-
getLowerRightButtonPanel
@Deprecated public JPanel getLowerRightButtonPanel()
Deprecated.UseSongTable.getSongContextButtonPanel()
instead.- Returns:
- lower right panel in the status bar.
-
getLowerLeftButtonPanel
@Deprecated public JPanel getLowerLeftButtonPanel()
Deprecated.- Returns:
- lower left panel in the status bar.
-
getMasterButtonPanel
public MasterButtonPanel getMasterButtonPanel()
Panel containing button that allow switching between main/master views like Inspection and Library.- Returns:
- panel.
-
restoreMasterButtonState
public void restoreMasterButtonState()
Restores the last state of the master button panel. To be called after the UI is completely set up.
-
setVisible
public void setVisible(boolean b)
- Overrides:
setVisible
in classWindow
-
setSideBarVisible
public void setSideBarVisible(boolean visible)
-
isSideBarVisible
public boolean isSideBarVisible()
Indicates whether the side bar (e.g. containing playlists) is visible.- Returns:
- true or false
-
setFullScreen
public void setFullScreen(boolean fullScreen)
Turns full screen mode on or off.- Parameters:
fullScreen
- true or false
-
isFullScreen
public boolean isFullScreen()
Are we showing the app in full screen mode?- Returns:
- true or false
-
init
public void init()
Description copied from interface:ApplicationComponent
Initializes this component and its sub-components.- Specified by:
init
in interfaceApplicationComponent<BeaTunes>
-
shutdown
public void shutdown()
Description copied from interface:ApplicationComponent
Shuts down this component and its sub-components.- Specified by:
shutdown
in interfaceApplicationComponent<BeaTunes>
-
setMasterComponent
public void setMasterComponent(Component masterComponent)
Sets the master component. I.e. sets the left side of the main screen divider usually occupied with the source tree view.- Parameters:
masterComponent
- master component
-
setDetailView
public void setDetailView(TreePath selectionPath)
SetDetailView
suitable for the given selection path from thePlayListTree
.- Parameters:
selectionPath
- path
-
setDetailView
public void setDetailView(DetailView detailView)
Sets the detail view. This implies that the detail component is set toView.getComponent()
.- Parameters:
detailView
- detail view- See Also:
setDetailComponent(DetailView, JComponent, Component, SlideComponentTransition.Direction)
,pushDetailView(DetailView)
-
pushDetailView
public void pushDetailView(DetailView detailView)
Pushes a newDetailView
onto the detailview stack.- Parameters:
detailView
- detail view- See Also:
popDetailView()
-
popDetailView
public void popDetailView()
Pops aDetailView
from the stack and restores it.- See Also:
pushDetailView(DetailView)
-
$$$getRootComponent$$$
public JComponent $$$getRootComponent$$$()
-
updateDetailViewStatusLabel
public void updateDetailViewStatusLabel()
Updates the main window's statuslabel, callingDetailView.getStatusLabel()
of the currentDetailView
.
-
getDetailView
public DetailView getDetailView()
-
getStatusLabel
public JLabel getStatusLabel()
-
setStatusBarVisible
public void setStatusBarVisible(boolean show)
Shows/hides the status bar.- Parameters:
show
- true, if you want to show the status bar, false to hide it
-
isStatusBarVisible
public boolean isStatusBarVisible()
Indicates whether the status bar is visible.- Returns:
- true or false
-
getSearchTextField
public SearchTextField getSearchTextField()
Returns the main search/filter field.- Returns:
- search field
-
getApplication
public BeaTunes getApplication()
Description copied from interface:ApplicationComponent
Returns the main application component.- Specified by:
getApplication
in interfaceApplicationComponent<BeaTunes>
- Returns:
- application object
-
setApplication
public void setApplication(BeaTunes application)
Description copied from interface:ApplicationComponent
Sets the main application component.- Specified by:
setApplication
in interfaceApplicationComponent<BeaTunes>
- Parameters:
application
- main application component
-
getId
public String getId()
Description copied from interface:ApplicationComponent
Unique id for each instance of this object.- Specified by:
getId
in interfaceApplicationComponent<BeaTunes>
- Returns:
- id
-
getSongTable
public SongTable getSongTable()
Returns the main song table.- Returns:
- song table
-
getAnalysisQueue
public AnalysisQueue getAnalysisQueue()
Returns the analysis table.- Returns:
- analysis table
-
getPlayListTree
public PlayListTree getPlayListTree()
Returns the main selection tree (sidebar).- Returns:
- tree
-
-