Class WindowAction

  • All Implemented Interfaces:
    java.awt.event.ActionListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.swing.Action

    public abstract class WindowAction
    extends BasicAction
    An Action which controls display of a window. ActionEvents passed to this action may have the action command set to one of the strings HIDE or SHOW to define what the command means (in fact anything other than HIDE counts as SHOW). It has a bound property with key VISIBLE which indicates whether the associated window is currently showing or not. Setting the VISIBLE property true/false has the same effect as invoking the action with the SHOW/HIDE command string.

    This class is currently a bit messy and overspecified for what it does.

    Since:
    2 Mar 2004
    Author:
    Mark Taylor (Starlink)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String HIDE
      Action command text for the action which hides the window associated with this action.
      static java.lang.String SHOW
      Action command text for the action which reveals the window associated with this action.
      static java.lang.String VISIBLE
      Name of the bound property which indicates whether the window associated with this action is currently visible in the GUI.
      • Fields inherited from class javax.swing.AbstractAction

        changeSupport, enabled
      • Fields inherited from interface javax.swing.Action

        ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, DISPLAYED_MNEMONIC_INDEX_KEY, LARGE_ICON_KEY, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SELECTED_KEY, SHORT_DESCRIPTION, SMALL_ICON
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected WindowAction​(java.lang.String name, javax.swing.Icon icon, java.lang.String shortdesc)
      Constructs a new WindowAction.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent evt)  
      javax.swing.JToggleButton getButton()
      Returns a toggle button which toggles visibility of the window associated with this action.
      java.lang.Object getValue​(java.lang.String key)  
      abstract java.awt.Window getWindow​(java.awt.Component parent)
      Returns the window associated with this action, creating it if necessary.
      abstract boolean hasWindow()
      Indicates whether the window associated with this window is currently in existence.
      void putValue​(java.lang.String key, java.lang.Object newValue)  
      • Methods inherited from class javax.swing.AbstractAction

        addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, isEnabled, removePropertyChangeListener, setEnabled
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface javax.swing.Action

        accept
    • Field Detail

      • HIDE

        public static final java.lang.String HIDE
        Action command text for the action which hides the window associated with this action.
        See Also:
        Constant Field Values
      • SHOW

        public static final java.lang.String SHOW
        Action command text for the action which reveals the window associated with this action.
        See Also:
        Constant Field Values
      • VISIBLE

        public static final java.lang.String VISIBLE
        Name of the bound property which indicates whether the window associated with this action is currently visible in the GUI.
        See Also:
        Constant Field Values
    • Constructor Detail

      • WindowAction

        protected WindowAction​(java.lang.String name,
                               javax.swing.Icon icon,
                               java.lang.String shortdesc)
        Constructs a new WindowAction.
        Parameters:
        name - action name
        icon - action icon
        shortdesc - action short description property
    • Method Detail

      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent evt)
      • getValue

        public java.lang.Object getValue​(java.lang.String key)
        Specified by:
        getValue in interface javax.swing.Action
        Overrides:
        getValue in class javax.swing.AbstractAction
      • putValue

        public void putValue​(java.lang.String key,
                             java.lang.Object newValue)
        Specified by:
        putValue in interface javax.swing.Action
        Overrides:
        putValue in class javax.swing.AbstractAction
      • getWindow

        public abstract java.awt.Window getWindow​(java.awt.Component parent)
        Returns the window associated with this action, creating it if necessary.
        Parameters:
        parent - component which may be used for placing the new window
      • hasWindow

        public abstract boolean hasWindow()
        Indicates whether the window associated with this window is currently in existence.
        Returns:
        true iff the window exists
      • getButton

        public javax.swing.JToggleButton getButton()
        Returns a toggle button which toggles visibility of the window associated with this action.

        ** Mostly working but not used at the moment **

        Returns:
        new button