Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx.autocomplete
Class ObjectToStringConverter

    java.lang.Object
      org.jdesktop.swingx.autocomplete.ObjectToStringConverter

    public abstract class ObjectToStringConverter

extends java.lang.Object

This class is used to provide string representations for objects when doing automatic completion.

A class inherited from this class could be used, when the object's `toString` method is not appropriate for automatic completion.

An example for i18n:

``

     public class I18NStringConverter extends ObjectToStringConverter {
       ResourceBundle bundle;

       public I18NStringConverter(ResourceBundle bundle) {
         this.bundle = bundle;
       }

       public String getPreferredStringForItem(Object item) {
         return item==null ? null : bundle.getString(item.toString());
       }
     }

It's also possible to return more than one string representation. The following example shows a converter that will allow a user to choose an airport using either the airport's full description (`toString()`) or its ICAO/IATA code:

     public class AirportConverter extends ObjectToStringConverter {

       public String[] getPossibleStringsForItem(Object item) {
         if (item==null) return new String[0];
         if (!(item instanceof Airport)) throw new IllegalArgumentException();
         Airport airport = (Airport) item;
         return new String[]{airport.toString(), airport.icaoCode, airport.iataCode};
       }

       public String getPreferredStringForItem(Object item) {
         return item==null?null:getPossibleStringsForItem(item)[0];
       }
     }

Author:
  Thomas Bierhance

Field Summary
`static ObjectToStringConverter` | `DEFAULT_IMPLEMENTATION` This field contains the default implementation, that returns `item.toString()` for any item `!=null`.

Constructor Summary
`ObjectToStringConverter()`

Method Summary
`java.lang.String[]` | `getPossibleStringsForItem(java.lang.Object item)` Returns all possible `String` representations for a given item.
`abstract java.lang.String` | `getPreferredStringForItem(java.lang.Object item)` Returns the preferred `String` representations for a given item.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### DEFAULT_IMPLEMENTATION

    public static final ObjectToStringConverter DEFAULT_IMPLEMENTATION

  This field contains the default implementation, that returns `item.toString()` for any item `!=null`. For any item `==null`, it returns `null` as well.

Constructor Detail

### ObjectToStringConverter

    public ObjectToStringConverter()

Method Detail

### getPossibleStringsForItem

    public java.lang.String[] getPossibleStringsForItem(java.lang.Object item)

  Returns all possible `String` representations for a given item. The default implementation wraps the method `getPreferredStringForItem`. It returns an empty array, if the wrapped method returns `null`. Otherwise it returns a one dimensional array containing the wrapped method's return value.

  Parameters:
    `item` - the item to convert
  Returns:
    possible `String` representation for the given item.

### getPreferredStringForItem

    public abstract java.lang.String getPreferredStringForItem(java.lang.Object item)

  Returns the preferred `String` representations for a given item.

  Parameters:
    `item` - the item to convert
  Returns:
    the preferred `String` representation for the given item.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.