// RAP [bm]: KeyEvents ///******************************************************************************* // * Copyright (c) 2004, 2005 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // *******************************************************************************/ //package org.eclipse.jface.bindings.keys; // //import org.eclipse.core.commands.ParameterizedCommand; //import org.eclipse.jface.bindings.Binding; //import org.eclipse.jface.bindings.TriggerSequence; // ///** // * <p> // * A keyboard shortcut. This is a binding between some keyboard input and the // * triggering of a command. This object is immutable. // * </p> // * // * @since 1.0 // */ //public final class KeyBinding extends Binding { // // /** // * The key sequence which triggers this binding. This sequence is never // * <code>null</code>. // */ // private final KeySequence keySequence; // // /** // * Constructs a new instance of <code>KeyBinding</code>. // * // * @param keySequence // * The key sequence which should trigger this binding. This value // * must not be <code>null</code>. It also must be a complete, // * non-empty key sequence. // * @param command // * The parameterized command to which this binding applies; this // * value may be <code>null</code> if the binding is meant to // * "unbind" a previously defined binding. // * @param schemeId // * The scheme to which this binding belongs; this value must not // * be <code>null</code>. // * @param contextId // * The context to which this binding applies; this value must not // * be <code>null</code>. // * @param locale // * The locale to which this binding applies; this value may be // * <code>null</code> if it applies to all locales. // * @param platform // * The platform to which this binding applies; this value may be // * <code>null</code> if it applies to all platforms. // * @param windowManager // * The window manager to which this binding applies; this value // * may be <code>null</code> if it applies to all window // * managers. This value is currently ignored. // * @param type // * The type of binding. This should be either <code>SYSTEM</code> // * or <code>USER</code>. // */ // public KeyBinding(final KeySequence keySequence, // final ParameterizedCommand command, final String schemeId, // final String contextId, final String locale, final String platform, // final String windowManager, final int type) { // super(command, schemeId, contextId, locale, platform, windowManager, // type); // // if (keySequence == null) { // throw new NullPointerException("The key sequence cannot be null"); //$NON-NLS-1$ // } // // if (!keySequence.isComplete()) { // throw new IllegalArgumentException( // "Cannot bind to an incomplete key sequence"); //$NON-NLS-1$ // } // // if (keySequence.isEmpty()) { // throw new IllegalArgumentException( // "Cannot bind to an empty key sequence"); //$NON-NLS-1$ // } // // this.keySequence = keySequence; // } // // /** // * Returns the key sequence which triggers this binding. The key sequence // * will not be <code>null</code>, empty or incomplete. // * // * @return The key sequence; never <code>null</code>. // */ // public final KeySequence getKeySequence() { // return keySequence; // } // // /* // * (non-Javadoc) // * // * @see org.eclipse.jface.bindings.Binding#getTriggerSequence() // */ // public TriggerSequence getTriggerSequence() { // return getKeySequence(); // } //}