de.jaret.util.ui.table.editor
Class TextCellEditor

java.lang.Object
  extended by de.jaret.util.ui.table.editor.CellEditorBase
      extended by de.jaret.util.ui.table.editor.TextCellEditor
All Implemented Interfaces:
ICellEditor, java.util.EventListener, org.eclipse.swt.events.FocusListener, org.eclipse.swt.internal.SWTEventListener

public class TextCellEditor
extends CellEditorBase
implements ICellEditor, org.eclipse.swt.events.FocusListener

Cell Editor for editing strings. Supports single and multiple line edits. For multiple line usage there are several options:

Key bindings: CR, TAB: accept input and leave, ALT+CR insert CR, ESC leave and reset to value when starting editing

Version:
$Id: TextCellEditor.java 394 2007-05-01 10:51:25Z olk $
Author:
Peter Kliem

Field Summary
protected  boolean _multi
           
protected  org.eclipse.swt.widgets.Text _text
          control used for editing.
 
Fields inherited from class de.jaret.util.ui.table.editor.CellEditorBase
_column, _row, _table
 
Constructor Summary
TextCellEditor(boolean multi)
           
 
Method Summary
protected  java.lang.String convertValue(IRow row, IColumn column)
           
 void dispose()
          Dispose whatever resouces have been allocated.
 void focusGained(org.eclipse.swt.events.FocusEvent arg0)
           
 void focusLost(org.eclipse.swt.events.FocusEvent arg0)
           
 org.eclipse.swt.widgets.Control getEditorControl(JaretTable table, IRow row, IColumn column, char typedKey)
          Provide the Control for editing the value at row/column.
 int getMaxrows()
           
 int getPreferredHeight()
          If the renderer *wishes* to be sized not the height of the cell, this method may be used to announce the preferred height of the control.
 void setMaxrows(int maxrows)
           
 void stopEditing(boolean storeInput)
          End editing.
protected  void storeValue(IRow row, IColumn column)
           
 
Methods inherited from class de.jaret.util.ui.table.editor.CellEditorBase
handleClick
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.jaret.util.ui.table.editor.ICellEditor
handleClick
 

Field Detail

_multi

protected boolean _multi

_text

protected org.eclipse.swt.widgets.Text _text
control used for editing.

Constructor Detail

TextCellEditor

public TextCellEditor(boolean multi)
Method Detail

convertValue

protected java.lang.String convertValue(IRow row,
                                        IColumn column)

storeValue

protected void storeValue(IRow row,
                          IColumn column)

getEditorControl

public org.eclipse.swt.widgets.Control getEditorControl(JaretTable table,
                                                        IRow row,
                                                        IColumn column,
                                                        char typedKey)
Provide the Control for editing the value at row/column. Important: make shure _not_ to create a new control with every call!

This method may return null indicating that the editor will not supply a control.

Base implementation storing the table and row/col information.

Specified by:
getEditorControl in interface ICellEditor
Overrides:
getEditorControl in class CellEditorBase
Parameters:
table - the table requesting the editor
row - row
column - column
typedKey - the character typed when invoking the editor (may be 0 if the editor was invoked without typing any key)
Returns:
configured Control (parent has to be the table)

getPreferredHeight

public int getPreferredHeight()
If the renderer *wishes* to be sized not the height of the cell, this method may be used to announce the preferred height of the control. A value of -1 signals no preference. default will always return -1.

Specified by:
getPreferredHeight in interface ICellEditor
Overrides:
getPreferredHeight in class CellEditorBase
Returns:
preferred height or -1 for no preference.

focusGained

public void focusGained(org.eclipse.swt.events.FocusEvent arg0)
Specified by:
focusGained in interface org.eclipse.swt.events.FocusListener

focusLost

public void focusLost(org.eclipse.swt.events.FocusEvent arg0)
Specified by:
focusLost in interface org.eclipse.swt.events.FocusListener

dispose

public void dispose()
Description copied from class: CellEditorBase
Dispose whatever resouces have been allocated.

Specified by:
dispose in interface ICellEditor
Overrides:
dispose in class CellEditorBase

stopEditing

public void stopEditing(boolean storeInput)
End editing.

Specified by:
stopEditing in interface ICellEditor
Parameters:
storeInput - if true the editor shall save the current input.

getMaxrows

public int getMaxrows()
Returns:
the maxrows

setMaxrows

public void setMaxrows(int maxrows)
Parameters:
maxrows - the maxrows to set


Copyright © 2012. All Rights Reserved.