Package org.jdesktop.swingx.calendar
Class DatePickerFormatter
- java.lang.Object
-
- javax.swing.JFormattedTextField.AbstractFormatter
-
- org.jdesktop.swingx.calendar.DatePickerFormatter
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
DatePickerFormatter.DatePickerFormatterUIResource
public class DatePickerFormatter extends javax.swing.JFormattedTextField.AbstractFormatter
Default formatter for the JXDatePicker component. It can handle a variety of date formats.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DatePickerFormatter.DatePickerFormatterUIResource
Same as DatePickerFormatter, but tagged as UIResource.
-
Constructor Summary
Constructors Constructor Description DatePickerFormatter()
Instantiates a formatter with the localized format patterns defined in the swingx.properties.DatePickerFormatter(java.text.DateFormat[] formats)
Instantiates a formatter with the given date formats.DatePickerFormatter(java.text.DateFormat[] formats, java.util.Locale locale)
Instantiates a formatter with the given formats and locale.DatePickerFormatter(java.util.Locale locale)
Instantiates a formatter with default date formats in the given locale.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addFormat(java.util.List<java.text.DateFormat> f, java.lang.String key, java.util.Locale locale)
Creates and adds a DateFormat to the given list.private void
addSystemDefaultFormat(java.util.List<java.text.DateFormat> f, java.util.Locale locale)
Adds the system's default DateFormat.protected java.text.DateFormat[]
createDefaultFormats(java.util.Locale locale)
Creates and returns the localized default formats.java.text.DateFormat[]
getFormats()
Returns an array of the formats used by this formatter.java.lang.Object
stringToValue(java.lang.String text)
java.lang.String
valueToString(java.lang.Object value)
-
-
-
Constructor Detail
-
DatePickerFormatter
public DatePickerFormatter()
Instantiates a formatter with the localized format patterns defined in the swingx.properties. These formats are localizable and fields may be re-arranged, such as swapping the month and day fields. The keys for localizing these fields are:- JXDatePicker.longFormat
- JXDatePicker.mediumFormat
- JXDatePicker.shortFormat
-
DatePickerFormatter
public DatePickerFormatter(java.text.DateFormat[] formats)
Instantiates a formatter with the given date formats. If the array is null, default formats are created from the localized patterns in swingx.properties. If empty?- Parameters:
formats
- the array of formats to use. May be null to use defaults or empty to do nothing (?), but must not contain null formats.
-
DatePickerFormatter
public DatePickerFormatter(java.util.Locale locale)
Instantiates a formatter with default date formats in the given locale. The default formats are created from the localized patterns in swingx.properties.- Parameters:
locale
- the Locale the use for the default formats.
-
DatePickerFormatter
public DatePickerFormatter(java.text.DateFormat[] formats, java.util.Locale locale)
Instantiates a formatter with the given formats and locale. PENDING JW: makes no sense as a public constructor because the locale is ignored if the formats are null. So has same public behaviour as the constructor with formats only ...- Parameters:
formats
-locale
-
-
-
Method Detail
-
getFormats
public java.text.DateFormat[] getFormats()
Returns an array of the formats used by this formatter.- Returns:
- the formats used by this formatter, guaranteed to be not null.
-
stringToValue
public java.lang.Object stringToValue(java.lang.String text) throws java.text.ParseException
- Specified by:
stringToValue
in classjavax.swing.JFormattedTextField.AbstractFormatter
- Throws:
java.text.ParseException
-
valueToString
public java.lang.String valueToString(java.lang.Object value) throws java.text.ParseException
- Specified by:
valueToString
in classjavax.swing.JFormattedTextField.AbstractFormatter
- Throws:
java.text.ParseException
-
createDefaultFormats
protected java.text.DateFormat[] createDefaultFormats(java.util.Locale locale)
Creates and returns the localized default formats. First tries to add formats created using the patterns stored in the UIManager. If there are no patterns, use the DateFormat's instance with style DateFormat.SHORT.- Returns:
- the localized default formats.
-
addSystemDefaultFormat
private void addSystemDefaultFormat(java.util.List<java.text.DateFormat> f, java.util.Locale locale)
Adds the system's default DateFormat. This implementation adds a dateInstance of style DateFormat.SHORT.- Parameters:
f
- the List of formats to add tolocale
- the Locale to use for the formatter.
-
addFormat
private void addFormat(java.util.List<java.text.DateFormat> f, java.lang.String key, java.util.Locale locale)
Creates and adds a DateFormat to the given list. Looks up a format pattern registered in the UIManager for the given key and tries to create a SimpleDateFormat. Does nothing if there is no format pattern registered or the pattern is invalid.- Parameters:
f
- the list of formatskey
- the key for getting the pattern from the UI
-
-