swingx
Version 2009-07-31

org.jdesktop.swingx.table
Class DatePickerCellEditor

java.lang.Object
  extended by javax.swing.AbstractCellEditor
      extended by org.jdesktop.swingx.table.DatePickerCellEditor
All Implemented Interfaces:
Serializable, CellEditor, TableCellEditor, TreeCellEditor

public class DatePickerCellEditor
extends AbstractCellEditor
implements TableCellEditor, TreeCellEditor

A CellEditor using a JXDatePicker as editor component.

NOTE: this class will be moved!

See Also:
Serialized Form

Field Summary
protected  int clickCountToStart
           
protected  DateFormat dateFormat
           
protected  JXDatePicker datePicker
           
protected  boolean ignoreAction
           
 
Fields inherited from class javax.swing.AbstractCellEditor
changeEvent, listenerList
 
Constructor Summary
DatePickerCellEditor()
          Instantiates a editor with the default dateFormat.
DatePickerCellEditor(DateFormat dateFormat)
          Instantiates an editor with the given dateFormat.
 
Method Summary
protected  boolean commitChange()
          Commits any pending edits and returns a boolean indicating whether the commit was successful.
protected  ActionListener createPickerActionListener()
          Creates and returns the ActionListener for the Picker.
 Date getCellEditorValue()
          Returns the pickers date.
 int getClickCountToStart()
          Returns the number of clicks needed to start editing.
 DateFormat[] getFormats()
           
protected  ActionListener getPickerActionListener()
          Returns the ActionListener to add to the datePicker.
 Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column)
           
 Component getTreeCellEditorComponent(JTree tree, Object value, boolean isSelected, boolean expanded, boolean leaf, int row)
           
protected  Date getValueAsDate(Object value)
          Returns the given value as Date.
protected  void handleParseException(ParseException e)
           
 boolean isCellEditable(EventObject anEvent)
           
protected  boolean isEmpty(Object value)
           
 void setClickCountToStart(int count)
          Specifies the number of clicks needed to start editing.
 void setFormats(DateFormat... formats)
           
 boolean stopCellEditing()
           Overridden to commit pending edits.
 
Methods inherited from class javax.swing.AbstractCellEditor
addCellEditorListener, cancelCellEditing, fireEditingCanceled, fireEditingStopped, getCellEditorListeners, removeCellEditorListener, shouldSelectCell
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.swing.CellEditor
addCellEditorListener, cancelCellEditing, removeCellEditorListener, shouldSelectCell
 

Field Detail

datePicker

protected JXDatePicker datePicker

dateFormat

protected DateFormat dateFormat

clickCountToStart

protected int clickCountToStart

ignoreAction

protected boolean ignoreAction
Constructor Detail

DatePickerCellEditor

public DatePickerCellEditor()
Instantiates a editor with the default dateFormat. PENDING: always override default from DatePicker?


DatePickerCellEditor

public DatePickerCellEditor(DateFormat dateFormat)
Instantiates an editor with the given dateFormat. If null, the datePickers default is used.

Parameters:
dateFormat -
Method Detail

getCellEditorValue

public Date getCellEditorValue()
Returns the pickers date. Note: the date is only meaningful after a stopEditing and before the next call to getTableCellEditorComponent.

Specified by:
getCellEditorValue in interface CellEditor

isCellEditable

public boolean isCellEditable(EventObject anEvent)
Specified by:
isCellEditable in interface CellEditor
Overrides:
isCellEditable in class AbstractCellEditor

stopCellEditing

public boolean stopCellEditing()

Overridden to commit pending edits. If commit successful, returns super, else returns false.

Specified by:
stopCellEditing in interface CellEditor
Overrides:
stopCellEditing in class AbstractCellEditor

setClickCountToStart

public void setClickCountToStart(int count)
Specifies the number of clicks needed to start editing.

Parameters:
count - an int specifying the number of clicks needed to start editing
See Also:
getClickCountToStart()

getClickCountToStart

public int getClickCountToStart()
Returns the number of clicks needed to start editing.

Returns:
the number of clicks needed to start editing

getTableCellEditorComponent

public Component getTableCellEditorComponent(JTable table,
                                             Object value,
                                             boolean isSelected,
                                             int row,
                                             int column)
Specified by:
getTableCellEditorComponent in interface TableCellEditor

getTreeCellEditorComponent

public Component getTreeCellEditorComponent(JTree tree,
                                            Object value,
                                            boolean isSelected,
                                            boolean expanded,
                                            boolean leaf,
                                            int row)
Specified by:
getTreeCellEditorComponent in interface TreeCellEditor

getValueAsDate

protected Date getValueAsDate(Object value)
Returns the given value as Date. PENDING: abstract into something pluggable (like StringValue in ComponentProvider?)

Parameters:
value - the value to map as Date
Returns:
the value as Date or null, if not successful.

handleParseException

protected void handleParseException(ParseException e)
Parameters:
e -

isEmpty

protected boolean isEmpty(Object value)

commitChange

protected boolean commitChange()
Commits any pending edits and returns a boolean indicating whether the commit was successful.

Returns:
true if the edit was valid, false otherwise.

getFormats

public DateFormat[] getFormats()
Returns:
the DatePicker's formats.
See Also:
JXDatePicker.getFormats().

setFormats

public void setFormats(DateFormat... formats)
Parameters:
formats - the formats to use in the datepicker.
See Also:
JXDatePicker.setFormats(DateFormat...)

getPickerActionListener

protected ActionListener getPickerActionListener()
Returns the ActionListener to add to the datePicker.

Returns:
the action listener to listen for datePicker's action events.

createPickerActionListener

protected ActionListener createPickerActionListener()
Creates and returns the ActionListener for the Picker.

Returns:
the ActionListener to listen for Picker's action events.

swingx
Version 2009-07-31