Bug 72046 Add new options in the code formatter preference page [code formatter]
Adding the new 1.5 constructs in the code formatter led to the additions of the following constants: FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_ENUM_CONSTANT FORMATTER_ALIGNMENT_FOR_SUPERINTERFACES_IN_ENUM_DECLARATION FORMATTER_BRACE_POSITION_FOR_ANNOTATION_TYPE_DECLARATION FORMATTER_BRACE_POSITION_FOR_ENUM_CONSTANT FORMATTER_BRACE_POSITION_FOR_ENUM_DECLARATION FORMATTER_INDENT_BODY_DECLARATIONS_COMPARE_TO_ENUM_CONSTANT_HEADER FORMATTER_INDENT_BODY_DECLARATIONS_COMPARE_TO_ENUM_DECLARATION_HEADER FORMATTER_INSERT_NEW_LINE_IN_EMPTY_ENUM_CONSTANT FORMATTER_INSERT_NEW_LINE_IN_EMPTY_ENUM_DECLARATION FORMATTER_INSERT_SPACE_AFTER_AND_IN_WILDCARD FORMATTER_INSERT_SPACE_AFTER_AT_IN_ANNOTATION FORMATTER_INSERT_SPACE_AFTER_AT_IN_ANNOTATION_TYPE_DECLARATION FORMATTER_INSERT_SPACE_AFTER_CLOSING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS FORMATTER_INSERT_SPACE_AFTER_CLOSING_ANGLE_BRACKET_IN_TYPE_PARAMETERS FORMATTER_INSERT_SPACE_AFTER_COLON_IN_FOR FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ANNOTATION FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ENUM_CONSTANT_ARGUMENTS FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ENUM_DECLARATIONS FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_PARAMETERIZED_TYPE_REFERENCE FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_TYPE_ARGUMENTS FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_TYPE_PARAMETERS FORMATTER_INSERT_SPACE_AFTER_OPENING_ANGLE_BRACKET_IN_PARAMETERIZED_TYPE_REFERENCE FORMATTER_INSERT_SPACE_AFTER_OPENING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS FORMATTER_INSERT_SPACE_AFTER_OPENING_ANGLE_BRACKET_IN_TYPE_PARAMETERS FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_ANNOTATION FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_ENUM_CONSTANT FORMATTER_INSERT_SPACE_AFTER_QUESTION_IN_WILDCARD FORMATTER_INSERT_SPACE_BEFORE_AND_IN_WILDCARD FORMATTER_INSERT_SPACE_BEFORE_AT_IN_ANNOTATION_TYPE_DECLARATION FORMATTER_INSERT_SPACE_BEFORE_CLOSING_ANGLE_BRACKET_IN_PARAMETERIZED_TYPE_REFERENCE FORMATTER_INSERT_SPACE_BEFORE_CLOSING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS FORMATTER_INSERT_SPACE_BEFORE_CLOSING_ANGLE_BRACKET_IN_TYPE_PARAMETERS FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_ANNOTATION FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_ENUM_CONSTANT FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_FOR FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ANNOTATION FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ENUM_CONSTANT_ARGUMENTS FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ENUM_DECLARATIONS FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_PARAMETERIZED_TYPE_REFERENCE FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_TYPE_ARGUMENTS FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_TYPE_PARAMETERS FORMATTER_INSERT_SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_PARAMETERIZED_TYPE_REFERENCE FORMATTER_INSERT_SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS FORMATTER_INSERT_SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_TYPE_PARAMETERS FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ANNOTATION_TYPE_DECLARATION FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ENUM_CONSTANT FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ENUM_DECLARATION FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_ANNOTATION FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_ANNOTATION_TYPE_MEMBER_DECLARATION FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_ENUM_CONSTANT FORMATTER_INSERT_SPACE_BEFORE_QUESTION_IN_WILDCARD FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_ANNOTATION_TYPE_MEMBER_DECLARATION FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_ENUM_CONSTANT They need to be added in the code formatter preference page.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/formatter/ProfileManager.java
if (fSelected == null) {
			fSelected= (Profile)fProfiles.get(JAVA_PROFILE);
		}
	}
	
	/**
	 * Notify observers with a message. The message must be one of the following:
	 * 
	 * @see #SELECTION_CHANGED_EVENT
	 * @see #PROFILE_DELETED_EVENT
	 * @see #PROFILE_RENAMED_EVENT
	 * @see #PROFILE_CREATED_EVENT
	 * @see #SETTINGS_CHANGED_EVENT
	 */
	protected void notifyObservers(int message) {
		setChanged();
		notifyObservers(new Integer(message));
	}
	
	
	/**
	 * Update all formatter settings with the settings of the specified profile. 
	 */
	private void writeToPreferenceStore(Profile profile) {
	
		final Hashtable actualOptions= JavaCore.getOptions();
		final Map profileOptions= profile.getSettings();
		
		boolean hasChanges= false;