mondrian.gui
Class SchemaPropertyCellEditor

java.lang.Object
  extended by mondrian.gui.SchemaPropertyCellEditor
All Implemented Interfaces:
javax.swing.CellEditor, javax.swing.table.TableCellEditor

public class SchemaPropertyCellEditor
extends java.lang.Object
implements javax.swing.table.TableCellEditor

Version:
$Id: //open/mondrian/src/main/mondrian/gui/SchemaPropertyCellEditor.java#23 $
Author:
sean

Field Summary
(package private)  java.awt.Component activeEditor
           
(package private)  java.awt.event.ActionListener al
           
(package private)  javax.swing.ComboBoxModel allOptions
           
(package private)  javax.swing.JCheckBox booleanEditor
           
(package private)  javax.swing.JTextArea cdataTextArea
           
(package private)  java.awt.event.FocusAdapter editorFocus
           
(package private)  java.awt.event.ItemListener il
           
(package private)  javax.swing.JTextField integerEditor
           
(package private)  JdbcMetaData jdbcMetaData
           
(package private)  javax.swing.JScrollPane jScrollPaneCDATA
           
(package private)  javax.swing.JComboBox listEditor
           
(package private)  java.lang.String listEditorValue
           
(package private)  java.util.List<javax.swing.event.CellEditorListener> listeners
           
(package private)  java.awt.event.MouseListener ml
           
(package private)  java.lang.String noSelect
           
(package private)  java.lang.Object originalValue
           
(package private)  javax.swing.JPanel relationRenderer
           
(package private)  javax.swing.JTable relationTable
           
(package private)  javax.swing.ComboBoxModel selOptions
           
(package private)  javax.swing.JTextField stringEditor
           
(package private)  javax.swing.JTable tableEditor
           
(package private)  Workbench workbench
           
 
Constructor Summary
SchemaPropertyCellEditor(Workbench workbench)
           
SchemaPropertyCellEditor(Workbench workbench, JdbcMetaData jdbcMetaData)
          Creates a new instance of SchemaPropertyCellEditor
 
Method Summary
 void addCellEditorListener(javax.swing.event.CellEditorListener l)
          Adds a listener to the list that's notified when the editor stops, or cancels editing.
 void cancelCellEditing()
          Tells the editor to cancel editing and not accept any partially edited value.
protected  void fireEditingCancelled()
           
protected  void fireEditingStopped()
           
 java.lang.Object getCellEditorValue()
          Returns the value contained in the editor.
 MondrianGuiDef.RelationOrJoin getRelation(javax.swing.JTable table, int row, int column)
           
 java.awt.Component getTableCellEditorComponent(javax.swing.JTable table, java.lang.Object value, boolean isSelected, int row, int column)
           
 boolean isCellEditable(java.util.EventObject anEvent)
          Asks the editor if it can start editing using anEvent.
 void removeCellEditorListener(javax.swing.event.CellEditorListener l)
          Removes a listener from the list that's notified
 void setMetaData(JdbcMetaData jdbcMetaData)
           
 boolean shouldSelectCell(java.util.EventObject anEvent)
          Returns true if the editing cell should be selected, false otherwise.
 boolean stopCellEditing()
          Tells the editor to stop editing and accept any partially edited value as the value of the editor.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

workbench

Workbench workbench

listeners

final java.util.List<javax.swing.event.CellEditorListener> listeners

stringEditor

javax.swing.JTextField stringEditor

cdataTextArea

javax.swing.JTextArea cdataTextArea

jScrollPaneCDATA

javax.swing.JScrollPane jScrollPaneCDATA

booleanEditor

javax.swing.JCheckBox booleanEditor

integerEditor

javax.swing.JTextField integerEditor

tableEditor

javax.swing.JTable tableEditor

activeEditor

java.awt.Component activeEditor

listEditor

javax.swing.JComboBox listEditor

relationTable

javax.swing.JTable relationTable

relationRenderer

javax.swing.JPanel relationRenderer

jdbcMetaData

JdbcMetaData jdbcMetaData

allOptions

javax.swing.ComboBoxModel allOptions

selOptions

javax.swing.ComboBoxModel selOptions

listEditorValue

java.lang.String listEditorValue

ml

java.awt.event.MouseListener ml

il

java.awt.event.ItemListener il

al

java.awt.event.ActionListener al

noSelect

java.lang.String noSelect

editorFocus

java.awt.event.FocusAdapter editorFocus

originalValue

java.lang.Object originalValue
Constructor Detail

SchemaPropertyCellEditor

public SchemaPropertyCellEditor(Workbench workbench)

SchemaPropertyCellEditor

public SchemaPropertyCellEditor(Workbench workbench,
                                JdbcMetaData jdbcMetaData)
Creates a new instance of SchemaPropertyCellEditor

Method Detail

getRelation

public MondrianGuiDef.RelationOrJoin getRelation(javax.swing.JTable table,
                                                 int row,
                                                 int column)

getTableCellEditorComponent

public java.awt.Component getTableCellEditorComponent(javax.swing.JTable table,
                                                      java.lang.Object value,
                                                      boolean isSelected,
                                                      int row,
                                                      int column)
Specified by:
getTableCellEditorComponent in interface javax.swing.table.TableCellEditor

addCellEditorListener

public void addCellEditorListener(javax.swing.event.CellEditorListener l)
Adds a listener to the list that's notified when the editor stops, or cancels editing.

Specified by:
addCellEditorListener in interface javax.swing.CellEditor
Parameters:
l - the CellEditorListener

cancelCellEditing

public void cancelCellEditing()
Tells the editor to cancel editing and not accept any partially edited value.

Specified by:
cancelCellEditing in interface javax.swing.CellEditor

getCellEditorValue

public java.lang.Object getCellEditorValue()
Returns the value contained in the editor.

Specified by:
getCellEditorValue in interface javax.swing.CellEditor
Returns:
the value contained in the editor

isCellEditable

public boolean isCellEditable(java.util.EventObject anEvent)
Asks the editor if it can start editing using anEvent. anEvent is in the invoking component coordinate system. The editor can not assume the Component returned by 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.

Specified by:
isCellEditable in interface javax.swing.CellEditor
Parameters:
anEvent - the event the editor should use to consider whether to begin editing or not
Returns:
true if editing can be started
See Also:
shouldSelectCell(java.util.EventObject)

removeCellEditorListener

public void removeCellEditorListener(javax.swing.event.CellEditorListener l)
Removes a listener from the list that's notified

Specified by:
removeCellEditorListener in interface javax.swing.CellEditor
Parameters:
l - the CellEditorListener

shouldSelectCell

public boolean shouldSelectCell(java.util.EventObject anEvent)
Returns true if the editing cell should be selected, false otherwise. Typically, the return value is true, because is most cases the editing cell should be selected. However, it is useful to return false to keep the selection from changing for some types of edits. eg. A table that contains a column of check boxes, the user might want to be able to change those checkboxes without altering the selection. (See Netscape Communicator for just such an example) Of course, it is up to the client of the editor to use the return value, but it doesn't need to if it doesn't want to.

Specified by:
shouldSelectCell in interface javax.swing.CellEditor
Parameters:
anEvent - the event the editor should use to start editing
Returns:
true if the editor would like the editing cell to be selected; otherwise returns false
See Also:
isCellEditable(java.util.EventObject)

stopCellEditing

public boolean stopCellEditing()
Tells the editor to stop editing and accept any partially edited value as the value of the editor. The editor returns false if editing was not stopped; this is useful for editors that validate and can not accept invalid entries.

Specified by:
stopCellEditing in interface javax.swing.CellEditor
Returns:
true if editing was stopped; false otherwise

fireEditingStopped

protected void fireEditingStopped()

fireEditingCancelled

protected void fireEditingCancelled()

setMetaData

public void setMetaData(JdbcMetaData jdbcMetaData)

Get Mondrian at SourceForge.net. Fast, secure and free Open Source software downloads