com.cbse.jeasy
Class JEDatafield

java.lang.Object
  extended by com.cbse.jeasy.JEObject
      extended by com.cbse.jeasy.JEDatafield
All Implemented Interfaces:
java.awt.datatransfer.ClipboardOwner, java.awt.event.FocusListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.util.EventListener, javax.swing.event.DocumentListener

public class JEDatafield
extends JEObject
implements java.awt.event.FocusListener, javax.swing.event.DocumentListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.datatransfer.ClipboardOwner

A class using a JLabel a JTextfield and a JButton to build an inputfield in a component. A datafield always references a dataclass.

Properties
name values comment
id * Id of the object. Let it begin with DF_
dataclass * Reference to JEDataclass
XMLtag * The tagname used to serialize the item in xml format.
tooltip   Text in Tooltip
border   Id of a border.
button true
false
Set true will set a button behind the field, which will send the id of the JEDatafield as an ActionCommand to the callBack
fieldlength   It will overwrite the value of JEDataclass. It sets the length of the JTextfield. It can be overwritten by maxfieldlength in jeglobal.
behind   A string behind the field
horizontalAlignment LEADING
LEFT
CENTER
RIGHT
TRAILING
text   Set the text to be displayed in the field
serializeFormatter   Set the jeasy formatter to format the source (gui field) to destination xml message
deserializeFormatter   Set the jeasy formatter to format the source (xml message) to the destination (gui field)
text   Set the text to be displayed in the field
editable true
false
Set to false will change the field to an outputfield.
enabled true
false
Enables or disables the component.
markingBackground true
false
Set to true will use the global background color.
mandatory true
false
Defines an entry as mandatory
markable true
false
The field will get a focus even it is not editable and you can copy data from it
clearBehind true
false
When the field is cleared the field behind will be cleared too.
visible true
false
Set to false will hide the label and the field in panels and tables.
width int value The width of the combobox in pixels.
height int value The height of the combobox in pixels.
name   It will overwrite the name of the JEDataclass. It is the name of the label of the textfield.
labelConstraints   Constraints for JLabel
labelFont   To set an other font then defined in global
textfieldFont   To set an other font then defined in global
textfieldConstraints   Constraints for JTextField
* = property you have to set; bold = default value

Version:
%I%, %G% Think of markable !!!!!!!!!!!!!!!!!!!!!!!
Author:
H.Pfohl

Field Summary
 
Fields inherited from class com.cbse.jeasy.JEObject
DEVELOPPING, INPUT_ERROR_DATE, INPUT_ERROR_LENGTH, INPUT_ERROR_MANDATORY, INPUT_ERROR_PARSE, INPUT_ERROR_RANGE, INPUT_ERROR_TIME, INPUT_ERRORS, NO_INPUT_ERROR, RUNNING
 
Constructor Summary
JEDatafield(java.lang.String s)
          Reads the properties from a string.
 
Method Summary
 void backupEntry()
          The current text will be stored internal to check against changes
 void changedUpdate(javax.swing.event.DocumentEvent e)
           
 void clear()
          Clears the JTextfield
 java.lang.Object deserialize(java.lang.String s)
          Converts a String to the format of the datafield
 int examine()
          Checks and formats the entry of the textfield.
 int examine(java.lang.String s)
           
 void focusGained(java.awt.event.FocusEvent e)
           
 void focusLost(java.awt.event.FocusEvent e)
           
 boolean getAntialiasing()
          Gets the anialialising flag
 java.lang.String getBackupEntry()
          Gets the backuped text
 java.lang.String getBehind()
          The string behind the field
 javax.swing.border.Border getBorder()
          Get the border
 javax.swing.JComponent getComponent()
          Gets the JComponent based on this JEasy Object Here it is the JTextfield
 JEDataclass getDataclass()
          Get the JEDataclass
 JEFormat getDeserializeFormatter()
          Get the deserializeFormatter
 javax.swing.plaf.ColorUIResource getErrorBackground()
           
 java.lang.Class getJClass()
          Get the JClass
 javax.swing.JLabel getJLabel()
          Get the JLabel
 java.lang.String getLastValidText()
           
 javax.swing.plaf.ColorUIResource getMarkingBackground()
           
 java.lang.String getMnemonic()
          Gets the mnemonic from JEDatafield or JEDataclass
 java.lang.String getName()
          Gets the name from JEDatafield or JEDataclass
 JEFormat getSerializeFormatter()
          Get the serializeFormatter
 java.lang.String getText()
          The text from the JTextfield
 javax.swing.JTextField getTextField()
          Get the JTextField
 java.lang.String getToolTip()
          Gets the toolTipText
 boolean getVerifyNeeded()
           
 java.lang.String getXMLtag()
          Gets the XMLtag.
 void insertUpdate(javax.swing.event.DocumentEvent e)
           
 boolean isEditable()
          False if the Datafield should not be edited in a Table or Panel
 boolean isMandatory()
          Return if an entry is mandatory
 boolean isMarkable()
          Return if an entry is markable
 boolean isMarkingBackground()
           
 boolean isNumeric()
           
 boolean isVisible()
          False if the Datafield should not be shown in a Table or Panel
 void JEadd(java.awt.Container co, java.awt.LayoutManager lm)
          Adds the Component to a Container.
 void JEadd(javax.swing.JTable table)
          Adds the Component to a JTable
 void JEadd(java.lang.String border, java.awt.Container co)
          Adds the textfield of the JEDatafield to a Container with a BorderLayout
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
 void lostOwnership(java.awt.datatransfer.Clipboard clipboard, java.awt.datatransfer.Transferable contents)
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void removeUpdate(javax.swing.event.DocumentEvent e)
           
 void restoreEntry()
          Sets the entry of the component to the backuped value
 java.lang.Object serialize()
          Gets the text of the textfield and converts thruw the serializeFormatter
 void setBackground(javax.swing.plaf.ColorUIResource c)
          Sets the background of the datafield
 void setBehind(java.lang.String s)
          Sets string behind the field
 void setClipboardContents(java.lang.String aString)
          Place a String on the clipboard, and make this class the owner of the Clipboard's contents.
 void setEditable(boolean eb)
          Enables/disables the textfield for input
 void setEnabled(boolean eb)
          Enables/disables the textfield and the button
 boolean setFocus()
          Sets the focus if editable
 void setMandatory(boolean b)
          Sets the entry mandatory or not
 void setMarkable(boolean eb)
          Enables or disables the inputfield for editing
 void setSelected(boolean b)
          Set the textfield selected or unselect the field
 void setText(java.lang.String ts)
          Sets a String into the JTextfield
 void setVerified(boolean b)
           
 void setVerifyNeeded(boolean b)
           
 void setVisible(boolean bv)
          setVisible of the label textfield and the button
 void setXMLtag(java.lang.String s)
          Sets the XMLtag
 void start()
          Creates the jfc components using the properties
 void textUpdate(javax.swing.event.DocumentEvent e)
           
 void transferFocus()
          transfers the focus to the next field
 void transferFocusBackward()
          transfers the focus to the previuos field
 boolean verify()
          Activate the verifier as if the focus were lost Call this methode of you want to check the entry after you have set it by setText(...)
 boolean wasEntryChanged()
          The components compares the current entry with the data stored by backupEntry()
 
Methods inherited from class com.cbse.jeasy.JEObject
deserializeValue, getApplet, getApplLocale, getCenter, getEast, getElementAt, getElementSize, getId, getJCallBack, getLabel, getMode, getNorth, getObjLocale, getParentId, getPreview, getProjectDirectory, getProperty, getRegisterText, getSouth, getStarted, getTitle, getType, getWest, isEnabled, isEnterprise, isProfessional, isStandard, JEadd, JEadd, JEadd, JEadd, JEadd, JEadd, JEadd, JEadd, JEaddTab, removeProperties, removeProperty, serializeValue, setApplet, setApplLocale, setEditable, setEnabled, setJCallBack, setMarkable, setMode, setObjLocale, setParentId, setPreview, setProjectDirectory, setProperty, setStarted, setVisible
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JEDatafield

public JEDatafield(java.lang.String s)
Reads the properties from a string.

Parameters:
s - contains properties and values
See Also:
JE#PropertyString
Method Detail

getDataclass

public JEDataclass getDataclass()
Get the JEDataclass

Returns:
JEDataclass

getTextField

public javax.swing.JTextField getTextField()
Get the JTextField

Returns:
JTextField

getBorder

public javax.swing.border.Border getBorder()
Get the border

Returns:
Border

getSerializeFormatter

public JEFormat getSerializeFormatter()
Get the serializeFormatter

Returns:
JEFormat

getDeserializeFormatter

public JEFormat getDeserializeFormatter()
Get the deserializeFormatter

Returns:
JEFormat

setSelected

public void setSelected(boolean b)
Set the textfield selected or unselect the field


getAntialiasing

public boolean getAntialiasing()
Gets the anialialising flag


getJLabel

public javax.swing.JLabel getJLabel()
Get the JLabel

Returns:
JLabel

getComponent

public javax.swing.JComponent getComponent()
Gets the JComponent based on this JEasy Object Here it is the JTextfield

Overrides:
getComponent in class JEObject
Returns:
JComponent

getJClass

public java.lang.Class getJClass()
Get the JClass

Overrides:
getJClass in class JEObject
Returns:

deserialize

public java.lang.Object deserialize(java.lang.String s)
Converts a String to the format of the datafield

Returns:
Object

serialize

public java.lang.Object serialize()
Gets the text of the textfield and converts thruw the serializeFormatter

Returns:
Object

getName

public java.lang.String getName()
Gets the name from JEDatafield or JEDataclass

Overrides:
getName in class JEObject
Returns:
lable

getXMLtag

public java.lang.String getXMLtag()
Gets the XMLtag. Returns the id if no XMLtag is specified

Overrides:
getXMLtag in class JEObject
Returns:
String

setXMLtag

public void setXMLtag(java.lang.String s)
Sets the XMLtag


getMnemonic

public java.lang.String getMnemonic()
Gets the mnemonic from JEDatafield or JEDataclass


getToolTip

public java.lang.String getToolTip()
Gets the toolTipText

Returns:
String

verify

public boolean verify()
Activate the verifier as if the focus were lost Call this methode of you want to check the entry after you have set it by setText(...)


getText

public java.lang.String getText()
The text from the JTextfield

Returns:
String

getBehind

public java.lang.String getBehind()
The string behind the field

Returns:
String

setBehind

public void setBehind(java.lang.String s)
Sets string behind the field


setText

public void setText(java.lang.String ts)
Sets a String into the JTextfield


setFocus

public boolean setFocus()
Sets the focus if editable

Overrides:
setFocus in class JEObject

setMandatory

public void setMandatory(boolean b)
Sets the entry mandatory or not


isMandatory

public boolean isMandatory()
Return if an entry is mandatory


setMarkable

public void setMarkable(boolean eb)
Description copied from class: JEObject
Enables or disables the inputfield for editing

Overrides:
setMarkable in class JEObject

isMarkable

public boolean isMarkable()
Return if an entry is markable


setEnabled

public void setEnabled(boolean eb)
Enables/disables the textfield and the button

Overrides:
setEnabled in class JEObject

transferFocus

public void transferFocus()
transfers the focus to the next field


transferFocusBackward

public void transferFocusBackward()
transfers the focus to the previuos field


setEditable

public void setEditable(boolean eb)
Enables/disables the textfield for input

Overrides:
setEditable in class JEObject

setVisible

public void setVisible(boolean bv)
setVisible of the label textfield and the button

Overrides:
setVisible in class JEObject

isVisible

public boolean isVisible()
False if the Datafield should not be shown in a Table or Panel

Overrides:
isVisible in class JEObject
Returns:
visible

isEditable

public boolean isEditable()
False if the Datafield should not be edited in a Table or Panel

Overrides:
isEditable in class JEObject
Returns:
editable

setBackground

public void setBackground(javax.swing.plaf.ColorUIResource c)
Sets the background of the datafield


clear

public void clear()
Clears the JTextfield

Overrides:
clear in class JEObject

backupEntry

public void backupEntry()
The current text will be stored internal to check against changes

Overrides:
backupEntry in class JEObject

getBackupEntry

public java.lang.String getBackupEntry()
Gets the backuped text

Returns:
String

restoreEntry

public void restoreEntry()
Sets the entry of the component to the backuped value

Overrides:
restoreEntry in class JEObject

wasEntryChanged

public boolean wasEntryChanged()
The components compares the current entry with the data stored by backupEntry()

Overrides:
wasEntryChanged in class JEObject
Returns:
true data was changed false current data is equal backup data

getLastValidText

public java.lang.String getLastValidText()

isMarkingBackground

public boolean isMarkingBackground()

getMarkingBackground

public javax.swing.plaf.ColorUIResource getMarkingBackground()

getErrorBackground

public javax.swing.plaf.ColorUIResource getErrorBackground()

isNumeric

public boolean isNumeric()

start

public void start()
Creates the jfc components using the properties

Overrides:
start in class JEObject
See Also:
JE#start

JEadd

public void JEadd(java.lang.String border,
                  java.awt.Container co)
Adds the textfield of the JEDatafield to a Container with a BorderLayout

Overrides:
JEadd in class JEObject
Parameters:
String - "North" "South" "West" "East" "Center"
Container - where the textfield is added

JEadd

public void JEadd(java.awt.Container co,
                  java.awt.LayoutManager lm)
Adds the Component to a Container. Uses the constraints when the LayoutManager is a GridBagLayout.

Overrides:
JEadd in class JEObject

JEadd

public void JEadd(javax.swing.JTable table)
Adds the Component to a JTable

Overrides:
JEadd in class JEObject

focusGained

public void focusGained(java.awt.event.FocusEvent e)
Specified by:
focusGained in interface java.awt.event.FocusListener

focusLost

public void focusLost(java.awt.event.FocusEvent e)
Specified by:
focusLost in interface java.awt.event.FocusListener

removeUpdate

public void removeUpdate(javax.swing.event.DocumentEvent e)
Specified by:
removeUpdate in interface javax.swing.event.DocumentListener

insertUpdate

public void insertUpdate(javax.swing.event.DocumentEvent e)
Specified by:
insertUpdate in interface javax.swing.event.DocumentListener

changedUpdate

public void changedUpdate(javax.swing.event.DocumentEvent e)
Specified by:
changedUpdate in interface javax.swing.event.DocumentListener

textUpdate

public void textUpdate(javax.swing.event.DocumentEvent e)

examine

public int examine()
Checks and formats the entry of the textfield. Usefull to format a field that was set by the program

Returns:
JEObject.INPUT_ERROR_xxx

examine

public int examine(java.lang.String s)

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)
Specified by:
keyTyped in interface java.awt.event.KeyListener

keyPressed

public void keyPressed(java.awt.event.KeyEvent e)
Specified by:
keyPressed in interface java.awt.event.KeyListener

setClipboardContents

public void setClipboardContents(java.lang.String aString)
Place a String on the clipboard, and make this class the owner of the Clipboard's contents.


keyReleased

public void keyReleased(java.awt.event.KeyEvent e)
Specified by:
keyReleased in interface java.awt.event.KeyListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

setVerified

public void setVerified(boolean b)

setVerifyNeeded

public void setVerifyNeeded(boolean b)

getVerifyNeeded

public boolean getVerifyNeeded()

lostOwnership

public void lostOwnership(java.awt.datatransfer.Clipboard clipboard,
                          java.awt.datatransfer.Transferable contents)
Specified by:
lostOwnership in interface java.awt.datatransfer.ClipboardOwner