Class StringValueRegistry
java.lang.Object
org.jdesktop.swingx.sort.StringValueRegistry
- All Implemented Interfaces:
StringValueProvider
A writable implemenation of StringValueProvider. Typically, this is created and
maintained by a collection view and then passed over to interested parties. It is
modeled/implemented after the default renderer maintenance in a JTable.
PENDING JW: for safety - better not implement but return a provider. We probably don't want readers to frickle around here?.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Loggerprivate Map<Class<?>, StringValue> private HashMap<Integer, StringValue> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidRemoves all per-column mappings of StringValues.private Class<?> getClass(int row, int column) Returns the Class of the column.Returns the Map which stores the per-column Class, lazily creates one if null.private Map<Class<?>, StringValue> Returns the Map which stores the per-class StringValues, lazily creates one if null.private Map<Integer, StringValue> Returns the Map which stores the per-column StringValues, lazily creates one if null.getStringValue(int row, int column) Returns a StringValue to use for conversion of the cell content at row and column.getStringValue(Class<?> clazz) Returns the StringValue registered for the given class.private StringValuegetStringValueByClass(Class<?> clazz) voidsetColumnClass(Class<?> clazz, int column) Sets the column class.voidsetColumnClasses(Map<Integer, Class<?>> classPerColumn) voidsetStringValue(StringValue sv, int column) Sets a StringValue to use for the given column.voidsetStringValue(StringValue sv, Class<?> clazz) Sets the StringValue to use for the given class.
-
Field Details
-
LOG
-
perClass
-
perColumn
-
classPerColumn
-
-
Constructor Details
-
StringValueRegistry
public StringValueRegistry()
-
-
Method Details
-
getStringValue
Returns a StringValue to use for conversion of the cell content at row and column. The converter is guaranteed to be not null, so implemenations are responsible for a reasonable fall-back value always, f.i. if they have no converters registered of if any or both of the row/column coordinate is "invalid" (f.i. -1)- Specified by:
getStringValuein interfaceStringValueProvider- Parameters:
row- the row of the cell in model coordinatescolumn- the column of the cell in model coordinates- Returns:
- a StringValue to use for conversion, guaranteed to not null.
-
setStringValue
Sets a StringValue to use for the given column. If the converter is null, the mapping is removed.- Parameters:
sv- the StringValue to use for the given column.column- the column index in model coordinates.
-
clearColumnStringValues
public void clearColumnStringValues()Removes all per-column mappings of StringValues. -
setStringValue
Sets the StringValue to use for the given class. If the converter is null, the mapping is removed.- Parameters:
sv- the StringValue to use for the given column.clazz- the class
-
getStringValue
Returns the StringValue registered for the given class.This is temporarily exposed for testing only - do not use, it will be removed very soon!
- Parameters:
clazz- the class to find the registered StringValue for- Returns:
- the StringValue registered for the class, or null if not directly registered.
-
setColumnClass
Sets the column class.- Parameters:
clazz-column- index in model coordinates
-
setColumnClasses
-
getStringValueByClass
- Parameters:
clazz-- Returns:
-
getClass
Returns the Class of the column.- Parameters:
row-column-- Returns:
-
getColumnClassMap
-
getPerClassMap
Returns the Map which stores the per-class StringValues, lazily creates one if null.- Returns:
- the per-class storage map of StringValues
-
getPerColumnMap
Returns the Map which stores the per-column StringValues, lazily creates one if null.- Returns:
- the per-column storage map of StringValues
-