Package PamView.hidingpanel
Class HidingPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
PamView.panel.PamPanel
PamView.hidingpanel.HidingPanel
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,PamSettings
,SettingsNameProvider
,ColorManaged
- Direct Known Subclasses:
TabbedHidingPane.TabHidingPanel
Class for a hiding, possibly sliding panel to hold things like
the side bar, top control panel of the clip display, etc.
- Author:
- Doug Gillespie
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
-
Field Summary
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
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
ConstructorDescriptionHidingPanel
(Component componentFrame, Component mainComponent, int direction, boolean canScroll) Create a panel which can hide.HidingPanel
(Component componentFrame, Component mainComponent, int direction, boolean canScroll, String displayName, String settingsName) Create a panel which can hide. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addMainComponent
(Component mainComponent) Add the mainComponent to the hiding panelvoid
Extra painting to highlight panel if mouse is inside.Get the panel which contains the show and hide buttonsGet the button which controls hide behaviour.long
boolean
Return true if the panel is in it's expanded state.boolean
Check whether the hiding panel is highlighted when the mouse enters.void
void
Remove the mainComponentPanel.boolean
restoreSettings
(PamControlledUnitSettings pamControlledUnitSettings) void
Swaps the hide and show buttons around.void
setEdgePanel
(PamPanel edgePanel) void
setHighlight
(boolean highlight) Set whether the hiding panel is highlighted when the mouse enters.void
setOpaque
(boolean isOpaque) void
void
showPanel
(boolean state) Show or hide the panelMethods inherited from class PamView.panel.PamPanel
addComponent, getColorId, getDefaultColor, getFrame, getPreferredBorderColours, layoutGrid, setBackground, setDefaultColor
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, 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
-
HORIZONTAL
public static final int HORIZONTAL- See Also:
-
VERTICAL
public static final int VERTICAL- See Also:
-
-
Constructor Details
-
HidingPanel
public HidingPanel(Component componentFrame, Component mainComponent, int direction, boolean canScroll) Create a panel which can hide.- Parameters:
componentFrame
- the component where the hiding panel will sit.mainComponent
- - the component which will be shown inside the hiding panel i.e. the component which can be hidden.direction
- - direction: either HORIZONTAL or VERTICAL.canScroll
- - true if mainComponent is shown within a scroll pane.
-
HidingPanel
public HidingPanel(Component componentFrame, Component mainComponent, int direction, boolean canScroll, String displayName, String settingsName) Create a panel which can hide.- Parameters:
componentFrame
- the component where the hiding panel will sit.mainComponent
- - the component which will be shown inside the hiding panel i.e. the component which can be hidden.direction
- - direction: either HORIZONTAL or VERTICAL.canScroll
- - true if mainComponent is shown within a scroll pane.displayName
- String to show in hide / show tips.settingsName
- String unique name to store to hold position for next time.
-
-
Method Details
-
paintComponent
-
extraPainting
Extra painting to highlight panel if mouse is inside.- Parameters:
g
- - graphics handle.
-
reverseShowButton
public void reverseShowButton()Swaps the hide and show buttons around. Generally use this when a panel is on left hand side or bottom of screen. -
setTitle
-
showPanel
public void showPanel(boolean state) Show or hide the panel- Parameters:
state
- true = show, false = hide.
-
isExpanded
public boolean isExpanded()Return true if the panel is in it's expanded state.- Returns:
- whether the panel is showing or not.
-
setOpaque
public void setOpaque(boolean isOpaque) - Overrides:
setOpaque
in classJComponent
-
removeMainComponent
public void removeMainComponent()Remove the mainComponentPanel. -
addMainComponent
Add the mainComponent to the hiding panel- Parameters:
mainComponent
-
-
getHideButton
Get the button which controls hide behaviour. Can be used to add additional listeners.- Returns:
- HidePanel button.
-
getMainComponent
-
getEdgePanel
Get the panel which contains the show and hide buttons- Returns:
- panel which contaisn the show and hide buttons
-
setEdgePanel
-
isHighlight
public boolean isHighlight()Check whether the hiding panel is highlighted when the mouse enters. Only highlights the panle, not top level components.- Returns:
- true of panel is set to highlight.
-
setHighlight
public void setHighlight(boolean highlight) Set whether the hiding panel is highlighted when the mouse enters. Only highlights the panle, not top level components. -
getUnitName
- Specified by:
getUnitName
in interfaceSettingsNameProvider
- Returns:
- A Name specific to this instance of the particular class, e.g. Sperm whale detector, Beaked whale detector, etc.
-
getUnitType
- Specified by:
getUnitType
in interfacePamSettings
- Returns:
- A Name specific to the type, e.g. Click detector
-
getSettingsReference
- Specified by:
getSettingsReference
in interfacePamSettings
- Returns:
- The serialisable object that will be stored
-
getSettingsVersion
public long getSettingsVersion()- Specified by:
getSettingsVersion
in interfacePamSettings
- Returns:
- An integer version number for the settings
-
restoreSettings
- Specified by:
restoreSettings
in interfacePamSettings
- Returns:
- true if successful The object performs final checks (if needed) and then casts the settings data pamcontrolledunitSettings.settings into the correct type and uses as required
-