Imported GNU Classpath 0.92

2006-08-14  Mark Wielaard  <mark@klomp.org>

       Imported GNU Classpath 0.92
       * HACKING: Add more importing hints. Update automake version
       requirement.

       * configure.ac (gconf-peer): New enable AC argument.
       Add --disable-gconf-peer and --enable-default-preferences-peer
       to classpath configure when gconf is disabled.
       * scripts/makemake.tcl: Set gnu/java/util/prefs/gconf and
       gnu/java/awt/dnd/peer/gtk to bc. Classify
       gnu/java/security/Configuration.java as generated source file.

       * gnu/java/lang/management/VMGarbageCollectorMXBeanImpl.java,
       gnu/java/lang/management/VMMemoryPoolMXBeanImpl.java,
       gnu/java/lang/management/VMClassLoadingMXBeanImpl.java,
       gnu/java/lang/management/VMRuntimeMXBeanImpl.java,
       gnu/java/lang/management/VMMemoryManagerMXBeanImpl.java,
       gnu/java/lang/management/VMThreadMXBeanImpl.java,
       gnu/java/lang/management/VMMemoryMXBeanImpl.java,
       gnu/java/lang/management/VMCompilationMXBeanImpl.java: New VM stub
       classes.
       * java/lang/management/VMManagementFactory.java: Likewise.
       * java/net/VMURLConnection.java: Likewise.
       * gnu/java/nio/VMChannel.java: Likewise.

       * java/lang/Thread.java (getState): Add stub implementation.
       * java/lang/Class.java (isEnum): Likewise.
       * java/lang/Class.h (isEnum): Likewise.

       * gnu/awt/xlib/XToolkit.java (getClasspathTextLayoutPeer): Removed.

       * javax/naming/spi/NamingManager.java: New override for StackWalker
       functionality.

       * configure, sources.am, Makefile.in, gcj/Makefile.in,
       include/Makefile.in, testsuite/Makefile.in: Regenerated.

From-SVN: r116139
This commit is contained in:
Mark Wielaard 2006-08-14 23:12:35 +00:00
parent abab460491
commit ac1ed908de
1294 changed files with 99479 additions and 35933 deletions

View file

@ -471,6 +471,7 @@ public class JComboBox extends JComponent implements ItemSelectable,
public void setSelectedItem(Object item)
{
dataModel.setSelectedItem(item);
fireActionEvent();
}
/**
@ -1028,7 +1029,8 @@ public class JComboBox extends JComponent implements ItemSelectable,
}
/**
* This method hides combo box's popup whenever TAB key is pressed.
* This method is fired whenever a key is pressed with the combo box
* in focus
*
* @param e The KeyEvent indicating which key was pressed.
*/
@ -1036,15 +1038,6 @@ public class JComboBox extends JComponent implements ItemSelectable,
{
if (e.getKeyCode() == KeyEvent.VK_TAB)
setPopupVisible(false);
else if (keySelectionManager != null)
{
int i = keySelectionManager.selectionForKey(e.getKeyChar(),
getModel());
if (i >= 0)
setSelectedIndex(i);
else
super.processKeyEvent(e);
}
else
super.processKeyEvent(e);
}
@ -1066,7 +1059,7 @@ public class JComboBox extends JComponent implements ItemSelectable,
*/
public KeySelectionManager getKeySelectionManager()
{
return null;
return keySelectionManager;
}
/**
@ -1098,7 +1091,7 @@ public class JComboBox extends JComponent implements ItemSelectable,
*/
protected KeySelectionManager createDefaultKeySelectionManager()
{
return null;
return new DefaultKeySelectionManager();
}
/**
@ -1471,4 +1464,34 @@ public class JComboBox extends JComponent implements ItemSelectable,
// Nothing to do here.
}
}
private class DefaultKeySelectionManager
implements KeySelectionManager
{
public int selectionForKey(char aKey, ComboBoxModel aModel)
{
int selectedIndex = getSelectedIndex();
// Start at currently selected item and iterate to end of list
for (int i = selectedIndex + 1; i < aModel.getSize(); i++)
{
String nextItem = aModel.getElementAt(i).toString();
if (nextItem.charAt(0) == aKey)
return i;
}
// Wrap to start of list if no match yet
for (int i = 0; i <= selectedIndex; i++)
{
String nextItem = aModel.getElementAt(i).toString();
if (nextItem.charAt(0) == aKey)
return i;
}
return - 1;
}
}
}