Class Scheme
- java.lang.Object
-
- org.eclipse.core.commands.common.EventManager
-
- org.eclipse.core.commands.common.HandleObject
-
- org.eclipse.core.commands.common.NamedHandleObject
-
- org.eclipse.jface.bindings.Scheme
-
- All Implemented Interfaces:
Comparable
,IIdentifiable
public final class Scheme extends NamedHandleObject implements Comparable
An instance of
IScheme
is a handle representing a binding scheme as defined by the extension pointorg.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 ofICommandManager
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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addSchemeListener(ISchemeListener schemeListener)
Registers an instance ofISchemeListener
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.String
getParentId()
Returns the identifier of the parent of the scheme represented by this handle.void
removeSchemeListener(ISchemeListener schemeListener)
Unregisters an instance ofISchemeListener
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
equals, getId, hashCode, isDefined
-
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
-
-
-
-
Method Detail
-
addSchemeListener
public final void addSchemeListener(ISchemeListener schemeListener)
Registers an instance ofISchemeListener
to listen for changes to attributes of this instance.- Parameters:
schemeListener
- the instance ofISchemeListener
to register. Must not benull
. If an attempt is made to register an instance ofISchemeListener
which is already registered with this instance, no operation is performed.
-
compareTo
public final int compareTo(Object object)
- Specified by:
compareTo
in interfaceComparable
-
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 benull
.description
- The description for this scheme; may benull
.parentId
- The parent identifier for this scheme; may benull
.
-
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 ofISchemeListener
listening for changes to attributes of this instance.- Parameters:
schemeListener
- the instance ofISchemeListener
to unregister. Must not benull
. If an attempt is made to unregister an instance ofISchemeListener
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 classHandleObject
- 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 tonull
. Notification is sent to all listeners.- Specified by:
undefine
in classHandleObject
-
-