com.sun.electric.tool.user.menus
Class EMenuBar

java.lang.Object
  extended by com.sun.electric.tool.user.menus.EMenuItem
      extended by com.sun.electric.tool.user.menus.EMenu
          extended by com.sun.electric.tool.user.menus.EMenuBar
All Implemented Interfaces:
java.awt.event.ActionListener, java.util.EventListener

public class EMenuBar
extends EMenu

EMenuBar is a menu bar template. It associates several menu bars together. This maintains consistency of state and key bindings. It also acts as an listener for updating all menu items on a state change.


Nested Class Summary
 class EMenuBar.Instance
           
 
Nested classes/interfaces inherited from class com.sun.electric.tool.user.menus.EMenuItem
EMenuItem.CheckBox
 
Field Summary
 KeyBindingManager keyBindingManager
          Key Binding Manager for menu items
 
Fields inherited from class com.sun.electric.tool.user.menus.EMenuItem
NULL_ARRAY, SEPARATOR
 
Method Summary
 void addUserKeyBinding(EMenuItem item, javax.swing.KeyStroke stroke, javax.swing.KeyStroke prefixStroke)
          Add a user defined Key binding.
 EMenuBar.Instance genInstance(WindowFrame frame)
           
 java.lang.String getDescription(int[] path)
          Get a string description of the menu item.
 EMenu getHiddenMenu()
          Returns hidden menu whcih items are invoked by shortcuts only.
 KeyBindings getKeyBindings(EMenuItem item)
          Get the key bindings for the menu item.
 KeyBindingManager.KeyMaps getKeyMaps()
          Method to return an object that has real InputMap and ActionMap objects.
 void removeKeyBinding(java.lang.String actionDesc, KeyStrokePair pair)
          Removes a key binding.
 void resetAllKeyBindings()
          Sets *All* menu items back to their default key bindings
 void resetKeyBindings(EMenuItem item)
          Sets item back to default Key Bindings
 void restoreSavedBindings(boolean initialCall)
           
 void updateAllButtons()
          Update updatable buttons of this menu.
 
Methods inherited from class com.sun.electric.tool.user.menus.EMenu
createMenuItem, getItems, registerItem, run, setDynamicItems, updateMenuItem
 
Methods inherited from class com.sun.electric.tool.user.menus.EMenuItem
actionPerformed, getDescription, getMnemonicChar, getText, getToolTipText, isEnabled, isSelected, registerUpdatable, repeatLastCommand, shortcut, shortcut, toString, updateButtons
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

keyBindingManager

public final KeyBindingManager keyBindingManager
Key Binding Manager for menu items

Method Detail

getHiddenMenu

public EMenu getHiddenMenu()
Returns hidden menu whcih items are invoked by shortcuts only.


getDescription

public java.lang.String getDescription(int[] path)
Get a string description of the menu item. Takes the form

Menu | SubMenu | SubMenu | item

Parameters:
path - a path to EMenuItem
Returns:
a string of the description.

updateAllButtons

public void updateAllButtons()
Update updatable buttons of this menu.


getKeyBindings

public KeyBindings getKeyBindings(EMenuItem item)
Get the key bindings for the menu item.

Returns:
key bindings for the menu item, or null if no item or no bindings.

addUserKeyBinding

public void addUserKeyBinding(EMenuItem item,
                              javax.swing.KeyStroke stroke,
                              javax.swing.KeyStroke prefixStroke)
Add a user defined Key binding. This gets stored to preferences.

Parameters:
item - the menu item
stroke - the key stroke bound to menu item
prefixStroke - an option prefix stroke (may be null)

resetKeyBindings

public void resetKeyBindings(EMenuItem item)
Sets item back to default Key Bindings

Parameters:
item - the item to reset to default bindings

resetAllKeyBindings

public void resetAllKeyBindings()
Sets *All* menu items back to their default key bindings


removeKeyBinding

public void removeKeyBinding(java.lang.String actionDesc,
                             KeyStrokePair pair)
Removes a key binding.

Parameters:
actionDesc - the item to remove the binding from
pair - the key stroke pair to remove

restoreSavedBindings

public void restoreSavedBindings(boolean initialCall)

getKeyMaps

public KeyBindingManager.KeyMaps getKeyMaps()
Method to return an object that has real InputMap and ActionMap objects.

Returns:
a KeyMaps object.

genInstance

public EMenuBar.Instance genInstance(WindowFrame frame)