Bug 127171 [Commands] New API elements missing @since
Build id: I20060208-0848 The following new API elements in Eclipse 3.2 are missing "@since 3.2" tags: org.eclipse.core.commands.Command#addState(java.lang.String, org.eclipse.core.commands.State) org.eclipse.core.commands.Command#removeState(java.lang.String) org.eclipse.core.commands.CommandManager#AUTOGENERATED_CATEGORY_ID org.eclipse.core.commands.CommandManager#getAllCommands() org.eclipse.core.commands.ExecutionEvent#toString() org.eclipse.core.commands.operations.TriggeredOperations#replaceContext(org.eclipse.core.commands.operations.IUndoContext, org.eclipse.core.commands.operations.IUndoContext) org.eclipse.jface.bindings.keys.KeySequenceText#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener) org.eclipse.jface.bindings.keys.KeySequenceText#firePropertyChangeEvent(org.eclipse.jface.bindings.keys.KeySequence) org.eclipse.jface.bindings.keys.KeySequenceText#P_KEY_SEQUENCE org.eclipse.jface.bindings.keys.KeySequenceText#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
bundles/org.eclipse.jface/src/org/eclipse/jface/bindings/keys/KeySequenceText.java
*         <code>false</code> otherwise.
	 */
	private boolean hasIncompleteStroke() {
		return !keySequence.isComplete();
	}
	/**
	 * Tests whether the current text widget has some text selection.
	 * 
	 * @return <code>true</code> if the number of selected characters it
	 *         greater than zero; <code>false</code> otherwise.
	 */
	private boolean hasSelection() {
		return (text.getSelectionCount() > 0);
	}
	/**
	 * Inserts the key stroke at the current insertion point. This does a
	 * regular delete and insert, as if the key had been pressed.
	 * 
	 * @param stroke
	 *            The key stroke to insert; must not be <code>null</code>.
	 */
	public void insert(KeyStroke stroke) {
		if (!stroke.isComplete()) {
			return;
		}
		
		final KeySequence keySequence = getKeySequence();
		final KeyStroke[] oldKeyStrokes = keySequence.getKeyStrokes();
		final KeyStroke[] newKeyStrokes;
		if ((hasIncompleteStroke()) && (!keySequence.isEmpty())) {