< prev index next >
src/java.desktop/share/classes/javax/swing/CellEditor.java
Print this page
*** 31,60 ****
/**
* This interface defines the methods any general editor should be able
* to implement. <p>
*
* Having this interface enables complex components (the client of the
! * editor) such as <code>JTree</code> and
! * <code>JTable</code> to allow any generic editor to
* edit values in a table cell, or tree cell, etc. Without this generic
! * editor interface, <code>JTable</code> would have to know about specific editors,
! * such as <code>JTextField</code>, <code>JCheckBox</code>, <code>JComboBox</code>,
* etc. In addition, without this interface, clients of editors such as
! * <code>JTable</code> would not be able
* to work with any editors developed in the future by the user
* or a 3rd party ISV. <p>
*
* To use this interface, a developer creating a new editor can have the
* new component implement the interface. Or the developer can
* choose a wrapper based approach and provide a companion object which
! * implements the <code>CellEditor</code> interface (See
! * <code>DefaultCellEditor</code> for example). The wrapper approach
* is particularly useful if the user want to use a 3rd party ISV
! * editor with <code>JTable</code>, but the ISV didn't implement the
! * <code>CellEditor</code> interface. The user can simply create an object
* that contains an instance of the 3rd party editor object and "translate"
! * the <code>CellEditor</code> API into the 3rd party editor's API.
*
* @see javax.swing.event.CellEditorListener
*
* @author Alan Chung
* @since 1.2
--- 31,60 ----
/**
* This interface defines the methods any general editor should be able
* to implement. <p>
*
* Having this interface enables complex components (the client of the
! * editor) such as {@code JTree} and
! * {@code JTable} to allow any generic editor to
* edit values in a table cell, or tree cell, etc. Without this generic
! * editor interface, {@code JTable} would have to know about specific editors,
! * such as {@code JTextField}, {@code JCheckBox}, {@code JComboBox},
* etc. In addition, without this interface, clients of editors such as
! * {@code JTable} would not be able
* to work with any editors developed in the future by the user
* or a 3rd party ISV. <p>
*
* To use this interface, a developer creating a new editor can have the
* new component implement the interface. Or the developer can
* choose a wrapper based approach and provide a companion object which
! * implements the {@code CellEditor} interface (See
! * {@code DefaultCellEditor} for example). The wrapper approach
* is particularly useful if the user want to use a 3rd party ISV
! * editor with {@code JTable}, but the ISV didn't implement the
! * {@code CellEditor} interface. The user can simply create an object
* that contains an instance of the 3rd party editor object and "translate"
! * the {@code CellEditor} API into the 3rd party editor's API.
*
* @see javax.swing.event.CellEditorListener
*
* @author Alan Chung
* @since 1.2
*** 66,79 ****
* @return the value contained in the editor
*/
public Object getCellEditorValue();
/**
! * Asks the editor if it can start editing using <code>anEvent</code>.
! * <code>anEvent</code> is in the invoking component coordinate system.
* The editor can not assume the Component returned by
! * <code>getCellEditorComponent</code> is installed. This method
* is intended for the use of client to avoid the cost of setting up
* and installing the editor component if editing is not possible.
* If editing can be started this method returns true.
*
* @param anEvent the event the editor should use to consider
--- 66,79 ----
* @return the value contained in the editor
*/
public Object getCellEditorValue();
/**
! * Asks the editor if it can start editing using {@code anEvent}.
! * {@code anEvent} is in the invoking component coordinate system.
* The editor can not assume the Component returned by
! * {@code getCellEditorComponent} is installed. This method
* is intended for the use of client to avoid the cost of setting up
* and installing the editor component if editing is not possible.
* If editing can be started this method returns true.
*
* @param anEvent the event the editor should use to consider
< prev index next >