Eclipse Platform
Release 3.1

org.eclipse.jface.bindings
Class Scheme

java.lang.Object
  extended byorg.eclipse.core.commands.common.HandleObject
      extended byorg.eclipse.core.commands.common.NamedHandleObject
          extended byorg.eclipse.jface.bindings.Scheme
All Implemented Interfaces:
Comparable

public final class Scheme
extends NamedHandleObject
implements Comparable

An instance of IScheme is a handle representing a binding scheme as defined by the extension point org.eclipse.ui.bindings. The identifier of the handle is the identifier of the scheme being represented.

An instance of IScheme can be obtained from an instance of ICommandManager for any identifier, whether or not a scheme with that identifier is defined in the plugin registry.

The handle-based nature of this API allows it to work well with runtime plugin activation and deactivation. If a scheme is defined, that means that its corresponding plug-in is active. If the plug-in is then deactivated, the scheme will still exist but it will be undefined. An attempt to use an undefined scheme will result in a NotDefinedException being thrown.

This class is not intended to be extended by clients.

Since:
3.1
See Also:
ISchemeListener, CommandManager

Field Summary
 
Fields inherited from class org.eclipse.core.commands.common.NamedHandleObject
description, name
 
Fields inherited from class org.eclipse.core.commands.common.HandleObject
defined, id, string
 
Method Summary
 void addSchemeListener(ISchemeListener schemeListener)
          Registers an instance of ISchemeListener to listen for changes to attributes of this instance.
 int compareTo(Object object)
           
 void define(String name, String description, String parentId)
           Defines this scheme by giving it a name, and possibly a description and a parent identifier as well.
 boolean equals(Object object)
          Tests whether this scheme is equal to another object.
 String getParentId()
           Returns the identifier of the parent of the scheme represented by this handle.
 void removeSchemeListener(ISchemeListener schemeListener)
          Unregisters an instance of ISchemeListener listening for changes to attributes of this instance.
 String toString()
          The string representation of this command -- for debugging purposes only.
 void undefine()
          Makes this scheme become undefined.
 
Methods inherited from class org.eclipse.core.commands.common.NamedHandleObject
getDescription, getName
 
Methods inherited from class org.eclipse.core.commands.common.HandleObject
getId, hashCode, isDefined
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

addSchemeListener

public final void addSchemeListener(ISchemeListener schemeListener)
Registers an instance of ISchemeListener to listen for changes to attributes of this instance.

Parameters:
schemeListener - the instance of ISchemeListener to register. Must not be null. If an attempt is made to register an instance of ISchemeListener which is already registered with this instance, no operation is performed.

compareTo

public final int compareTo(Object object)
Specified by:
compareTo in interface Comparable

define

public final void define(String name,
                         String description,
                         String parentId)

Defines this scheme by giving it a name, and possibly a description and a parent identifier as well. The defined property for the scheme automatically becomes true.

Notification is sent to all listeners that something has changed.

Parameters:
name - The name of this scheme; must not be null.
description - The description for this scheme; may be null.
parentId - The parent identifier for this scheme; may be null.

equals

public final boolean equals(Object object)
Tests whether this scheme is equal to another object. A scheme is only equal to another scheme with the same properties.

Specified by:
equals in class HandleObject
Parameters:
object - The object with which to compare; may be null.
Returns:
true if the schemes are equal; false otherwise.

getParentId

public final String getParentId()
                         throws NotDefinedException

Returns the identifier of the parent of the scheme represented by this handle.

Notification is sent to all registered listeners if this attribute changes.

Returns:
the identifier of the parent of the scheme represented by this handle. May be null.
Throws:
NotDefinedException - if the scheme represented by this handle is not defined.

removeSchemeListener

public final void removeSchemeListener(ISchemeListener schemeListener)
Unregisters an instance of ISchemeListener listening for changes to attributes of this instance.

Parameters:
schemeListener - the instance of ISchemeListener to unregister. Must not be null. If an attempt is made to unregister an instance of ISchemeListener which is not already registered with this instance, no operation is performed.

toString

public final String toString()
The string representation of this command -- for debugging purposes only. This string should not be shown to an end user.

Specified by:
toString in class HandleObject
Returns:
The string representation; never null.

undefine

public final void undefine()
Makes this scheme become undefined. This has the side effect of changing the name, description and parent identifier to null. Notification is sent to all listeners.

Specified by:
undefine in class HandleObject

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

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