on dirait que valueOf(String) (l'inverse de toString()) est appelée à se généraliser en java. un signe ?
Code :
- public Object getItem() {
- Object newValue = editor.getText();
-
- if (oldValue != null && !(oldValue instanceof String)) {
- // The original value is not a string. Should return the value in it's
- // original type.
- if (newValue.equals(oldValue.toString())) {
- return oldValue;
- } else {
- // Must take the value from the editor and get the value and cast it to the new type.
- Class cls = oldValue.getClass();
- try {
- Method method = cls.getMethod("valueOf", new Class[]{String.class});
- newValue = method.invoke(oldValue, new Object[] { editor.getText()});
- } catch (Exception ex) {
- // Fail silently and return the newValue (a String object)
- }
- }
- }
- return newValue;
- }
|
(tiré de)
http://forum.hardware.fr/hardwaref [...] tm#t686142
l'éditeur générique tente de convertir la chaîne de caractères en objet avant de renvoyer la chose.
est-ce là le signe d'un remord de ne pas avoir mis valueOf() dans Object ? Ou alors il est temps de "génériciser" swing ...
edit : pour moduler un peu mon propre propos, c'est le seul appel optionnel de ce type qui est dans swing. Il est vrai que les autres éditeurs (de Tree ou de Table) fonctionnent différement.
Message édité par nraynaud le 29-03-2004 à 08:29:45
---------------
trainoo.com, c'est fini