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/LineWrappingTabPage.java
return root;
	}
	
	protected void doCreatePreferences(Composite composite, int numColumns) {
	
		final Group lineWidthGroup= createGroup(numColumns, composite, FormatterMessages.getString("LineWrappingTabPage.width_indent")); 
		createNumberPref(lineWidthGroup, numColumns, FormatterMessages.getString("LineWrappingTabPage.width_indent.option.max_line_width"), DefaultCodeFormatterConstants.FORMATTER_LINE_SPLIT, 0, 9999); 
		createNumberPref(lineWidthGroup, numColumns, FormatterMessages.getString("LineWrappingTabPage.width_indent.option.default_indent_wrapped"), DefaultCodeFormatterConstants.FORMATTER_CONTINUATION_INDENTATION, 0, 9999); 
		createNumberPref(lineWidthGroup, numColumns, FormatterMessages.getString("LineWrappingTabPage.width_indent.option.default_indent_array"), DefaultCodeFormatterConstants.FORMATTER_CONTINUATION_INDENTATION_FOR_ARRAY_INITIALIZER, 0, 9999);  
		
		fCategoriesViewer= new TreeViewer(composite , SWT.SINGLE | SWT.BORDER | SWT.READ_ONLY | SWT.V_SCROLL );
		fCategoriesViewer.setContentProvider(new ITreeContentProvider() {
			public Object[] getElements(Object inputElement) {
				return ((Collection)inputElement).toArray();
			}
			public Object[] getChildren(Object parentElement) {
				return ((Category)parentElement).children.toArray();
			}
			public Object getParent(Object element) { return null; }
			public boolean hasChildren(Object element) {
				return !((Category)element).children.isEmpty();
			}
			public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {}
			public void dispose() {}
		});
		fCategoriesViewer.setLabelProvider(new LabelProvider());
		fCategoriesViewer.setInput(fCategories);
		
		fCategoriesViewer.setExpandedElements(fCategories.toArray());
		final GridData gd= createGridData(numColumns, GridData.FILL_BOTH, 0);