Bug 94625 [Forms] [preference pages] Moving selection of triangle does not scroll
I20050509-2010 - Preferences > Java > Compiler > Errors/Warnings - expand sections until vertical scroll bar appears - scroll to top - set focus to an open section triangle - press arrow down key several times => the selection moves out of the visible region => Expected: the area is scrolled down such that the selection is visible (including as much as possible from the section's contents). It would also be nice if the area could be scrolled with Ctrl+Shift+Arrow_Up/Down (as for Trees) or Ctrl+Arrow_Up/Down (as in the editor).
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/OptionsConfigurationBlock.java
protected String setValue(Key key, boolean value) {
		return setValue(key, String.valueOf(value));
	}
	
	/* (non-javadoc)
	 * Update fields and validate.
	 * @param changedKey Key that changed, or null, if all changed.
	 */	
	protected abstract void validateSettings(Key changedKey, String oldValue, String newValue);
	
	
	protected String[] getTokens(String text, String separator) {
		StringTokenizer tok= new StringTokenizer(text, separator); 
		int nTokens= tok.countTokens();
		String[] res= new String[nTokens];
		for (int i= 0; i < res.length; i++) {
			res[i]= tok.nextToken().trim();
		}
		return res;
	}
	private boolean getChanges(IScopeContext currContext, List changedSettings) {
		boolean needsBuild= false;
		for (int i= 0; i < fAllKeys.length; i++) {
			Key key= fAllKeys[i];
			String oldVal= key.getStoredValue(currContext, null);
			String val= key.getStoredValue(currContext, fManager);
			if (val == null) {
				if (oldVal != null) {
					changedSettings.add(key);
					needsBuild |= !oldVal.equals(key.getStoredValue(fLookupOrder, true, fManager));