Bug 45033 Usability: Code Formatter Preferences Page Resizes Poorly
Eclipse 3.0 M4 This is just a single example of a common UI problem that exists in a wide variety of places in Eclipse, not just JDT. If you're going to allow a dialog/window to be resized (which I think you should), then some careful thought needs to go into how the widgets resize. Look at the preferences page for the JDT's Code Formatter and you'll see that when the dialog is resized the (really useful) preview text widget does not stretch and consume the remaining whitespace. Take a look at the screen shot of the dialog in various sizes to see what I mean.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/formatter/LineWrappingTabPage.java
);
	
	private final Category fMethodThrowsClauseCategory= new Category(
	    DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_THROWS_CLAUSE_IN_METHOD_DECLARATION, 
	    "class Example {" + 
	    "int foo() throws FirstException, SecondException, ThirdException {" + 
	    "  return Other.doSomething();}}", 
	    FormatterMessages.getString("LineWrappingTabPage.throws_clause") 
	);
	private final Category fConstructorThrowsClauseCategory= new Category(
	    DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_THROWS_CLAUSE_IN_CONSTRUCTOR_DECLARATION, 
	    "class Example {" + 
	    "Example() throws FirstException, SecondException, ThirdException {" + 
	    "  return Other.doSomething();}}", 
	    FormatterMessages.getString("LineWrappingTabPage.throws_clause") 
	);
	
	private final Category fAllocationExpressionArgumentsCategory= new Category(
	    DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_ALLOCATION_EXPRESSION,
	    "class Example {SomeClass foo() {return new SomeClass(100, 200, 300, 400, 500, 600, 700, 800, 900 );}}", 
	    FormatterMessages.getString("LineWrappingTabPage.object_allocation") 
	);
	
	private final Category fQualifiedAllocationExpressionCategory= new Category (
	    DefaultCodeFormatterConstants.FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_QUALIFIED_ALLOCATION_EXPRESSION,
	    "class Example {SomeClass foo() {return SomeOtherClass.new SomeClass(100, 200, 300, 400, 500 );}}", 
		FormatterMessages.getString("LineWrappingTabPage.qualified_object_allocation") 
	);
	
	private final Category fArrayInitializerExpressionsCategory= new Category(