Bug 126414 [Commands] handlers: Provide help context ids
For commands and handlers to replace actions, they need to be capable of providing help context identifiers. For an example, see OpenResourceHandler in org.eclipse.ui.ide. This help context id will need to be definable through XML and through code.
bundles/org.eclipse.core.commands/src/org/eclipse/core/commands/CommandManager.java
* but disregards characters prefixed with the {@link #ESCAPE_CHAR} escape
	 * character. This is used by {@link #deserialize(String)} and
	 * {@link #getParameterizations(String, IParameter[])} to parse the
	 * serialized parameterized command string.
	 * 
	 * @param escapedText
	 *            the string to search for the index of <code>ch</code> in
	 * @param ch
	 *            a character to search for in <code>escapedText</code>
	 * @return the index of the first unescaped occurrence of the character in
	 *         <code>escapedText</code>, or <code>-1</code> if the
	 *         character does not occur unescaped.
	 * @see String#indexOf(int)
	 */
	private final int unescapedIndexOf(final String escapedText, final char ch) {
		int pos = escapedText.indexOf(ch);
		
		if (pos == 0)
			return pos;
		while (pos != -1) {
			
			if (escapedText.charAt(pos - 1) != ESCAPE_CHAR)
				return pos;
			
			pos = escapedText.indexOf(ch, pos + 1);
		}
		return pos;
	}
}