Eclipse Platform
Release 3.1

org.eclipse.jface.action
Class ExternalActionManager.CommandCallback

java.lang.Object
  extended byorg.eclipse.jface.action.ExternalActionManager.CommandCallback
All Implemented Interfaces:
ExternalActionManager.ICallback, IBindingManagerListener
Enclosing class:
ExternalActionManager

public static final class ExternalActionManager.CommandCallback
extends Object
implements IBindingManagerListener, ExternalActionManager.ICallback

A simple implementation of the ICallback mechanism that simply takes a BindingManager and a CommandManager.

Since:
3.1

Constructor Summary
ExternalActionManager.CommandCallback(BindingManager bindingManager, CommandManager commandManager)
          Constructs a new instance of CommandCallback with the workbench it should be using.
ExternalActionManager.CommandCallback(BindingManager bindingManager, CommandManager commandManager, ExternalActionManager.IActiveChecker activeChecker)
          Constructs a new instance of CommandCallback with the workbench it should be using.
 
Method Summary
 void addPropertyChangeListener(String commandId, IPropertyChangeListener listener)
           Adds a listener to the object referenced by identifier.
 void bindingManagerChanged(BindingManagerEvent event)
          Notifies that attributes inside an instance of BindingManager have changed.
 Integer getAccelerator(String commandId)
          An accessor for the accelerator associated with the item indicated by the identifier.
 String getAcceleratorText(String commandId)
          An accessor for the accelerator text associated with the item indicated by the identifier.
 boolean isAcceleratorInUse(int accelerator)
          Checks to see whether the given accelerator is being used by some other mechanism (outside of the menus controlled by JFace).
 boolean isActive(String commandId)
          Calling this method with an undefined command id will generate a log message.
 void removePropertyChangeListener(String commandId, IPropertyChangeListener listener)
          Removes a listener from the object referenced by identifier.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExternalActionManager.CommandCallback

public ExternalActionManager.CommandCallback(BindingManager bindingManager,
                                             CommandManager commandManager)
Constructs a new instance of CommandCallback with the workbench it should be using. All commands will be considered active.

Parameters:
bindingManager - The binding manager which will provide the callback; must not be null.
commandManager - The command manager which will provide the callback; must not be null.
Since:
3.1

ExternalActionManager.CommandCallback

public ExternalActionManager.CommandCallback(BindingManager bindingManager,
                                             CommandManager commandManager,
                                             ExternalActionManager.IActiveChecker activeChecker)
Constructs a new instance of CommandCallback with the workbench it should be using.

Parameters:
bindingManager - The binding manager which will provide the callback; must not be null.
commandManager - The command manager which will provide the callback; must not be null.
activeChecker - The callback mechanism for checking whether a command is active; must not be null.
Since:
3.1
Method Detail

addPropertyChangeListener

public final void addPropertyChangeListener(String commandId,
                                            IPropertyChangeListener listener)
Description copied from interface: ExternalActionManager.ICallback

Adds a listener to the object referenced by identifier. This listener will be notified if a property of the item is to be changed. This identifier is specific to mechanism being used. In the case of the Eclipse workbench, this is the command identifier.

A single instance of the listener may only ever be associated with one identifier. Attempts to add the listener twice (without a removal inbetween) has undefined behaviour.

Specified by:
addPropertyChangeListener in interface ExternalActionManager.ICallback
Parameters:
commandId - The identifier of the item to which the listener should be attached; must not be null.
listener - The listener to be added; must not be null.
See Also:
ExternalActionManager.ICallback.addPropertyChangeListener(String, IPropertyChangeListener)

bindingManagerChanged

public final void bindingManagerChanged(BindingManagerEvent event)
Description copied from interface: IBindingManagerListener
Notifies that attributes inside an instance of BindingManager have changed. Specific details are described in the BindingManagerEvent. Changes in the binding manager can cause the set of defined or active schemes or bindings to change.

Specified by:
bindingManagerChanged in interface IBindingManagerListener
Parameters:
event - the binding manager event. Guaranteed not to be null.

getAccelerator

public final Integer getAccelerator(String commandId)
Description copied from interface: ExternalActionManager.ICallback
An accessor for the accelerator associated with the item indicated by the identifier. This identifier is specific to mechanism being used. In the case of the Eclipse workbench, this is the command identifier.

Specified by:
getAccelerator in interface ExternalActionManager.ICallback
Parameters:
commandId - The identifier of the item from which the accelerator should be obtained ; must not be null.
Returns:
An integer representation of the accelerator. This is the same accelerator format used by SWT.
See Also:
ExternalActionManager.ICallback.getAccelerator(String)

getAcceleratorText

public final String getAcceleratorText(String commandId)
Description copied from interface: ExternalActionManager.ICallback
An accessor for the accelerator text associated with the item indicated by the identifier. This identifier is specific to mechanism being used. In the case of the Eclipse workbench, this is the command identifier.

Specified by:
getAcceleratorText in interface ExternalActionManager.ICallback
Parameters:
commandId - The identifier of the item from which the accelerator text should be obtained ; must not be null.
Returns:
A string representation of the accelerator. This is the string representation that should be displayed to the user.
See Also:
ExternalActionManager.ICallback.getAcceleratorText(String)

isAcceleratorInUse

public final boolean isAcceleratorInUse(int accelerator)
Description copied from interface: ExternalActionManager.ICallback
Checks to see whether the given accelerator is being used by some other mechanism (outside of the menus controlled by JFace). This is used to keep JFace from trying to grab accelerators away from someone else.

Specified by:
isAcceleratorInUse in interface ExternalActionManager.ICallback
Parameters:
accelerator - The accelerator to check -- in SWT's internal accelerator format.
Returns:
true if the accelerator is already being used and shouldn't be used again; false otherwise.
See Also:
ExternalActionManager.ICallback.isAcceleratorInUse(int)

isActive

public final boolean isActive(String commandId)
Calling this method with an undefined command id will generate a log message.

Specified by:
isActive in interface ExternalActionManager.ICallback
Parameters:
commandId - The identifier of the item from which the active state should be retrieved; must not be null.
Returns:
true if the item is active; false otherwise.
See Also:
ExternalActionManager.ICallback.isActive(String)

removePropertyChangeListener

public final void removePropertyChangeListener(String commandId,
                                               IPropertyChangeListener listener)
Description copied from interface: ExternalActionManager.ICallback
Removes a listener from the object referenced by identifier. This identifier is specific to mechanism being used. In the case of the Eclipse workbench, this is the command identifier.

Specified by:
removePropertyChangeListener in interface ExternalActionManager.ICallback
Parameters:
commandId - The identifier of the item to from the listener should be removed; must not be null.
listener - The listener to be removed; must not be null.
See Also:
ExternalActionManager.ICallback.removePropertyChangeListener(String, IPropertyChangeListener)

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.