Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## de.jsystems.framework.swing
Class DateDocument

    java.lang.Object
      javax.swing.text.AbstractDocument
          javax.swing.text.PlainDocument
              de.jsystems.framework.swing.DateDocument

All Implemented Interfaces:
  Document, Serializable

class DateDocument
extends PlainDocument

Document fuer ein Textfeld fuer Datumseingaben. Hierbei wird als Wert nur ein gueltiges Datum zugelassen. Dabei gilt als Formatmaske 'dd.mm.yyyy', wobei diese Maske auch im Eingabefeld genauso vorbelegt wird. Ueberschrieben werden muessen alle Zeichen der Eingabemaske, da ansonsten kein korrektes Datum ausgelesen werden kann. Die Gueltigkeit des Datums wird schon bei der Eingabe geprueft. Ein Datum wie der 30.02 oder der 31.04 sind nicht moeglich. Schaltjahre werden beruecksichtigt.

Version:
  1.0
  Copyright by Jens Homm 2000 - 2004
Author:
  Jens Homm JSYSTEMS

Nested Class Summary

Nested classes inherited from class javax.swing.text.AbstractDocument
`AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement`

Field Summary
`static String` | `formatString` Die Formatmaske fuer die Datumseingabe.

Fields inherited from class javax.swing.text.PlainDocument
`lineLimitAttribute, tabSizeAttribute`

Fields inherited from class javax.swing.text.AbstractDocument
`BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName`

Fields inherited from interface javax.swing.text.Document
`StreamDescriptionProperty, TitleProperty`

Constructor Summary
`DateDocument(DateField textfield)` Erzeugt ein neues Document fuer die uebergebene Textkomponente.

Method Summary
`void` | `insertString(int offset, String s, AttributeSet attributeSet)` Ueberprueft die Eingabe auf Gueltigkeit fuer die entsprechende Stelle im Datum(Tag/Monat/Jahr).
`void` | `remove(int offset, int length)` Loescht die Eingabe im Document an der uebergebenen Stelle in der uebergebenen Laenge.

Methods inherited from class javax.swing.text.PlainDocument
`createDefaultRoot, getDefaultRootElement, getParagraphElement, insertUpdate, removeUpdate`

Methods inherited from class javax.swing.text.AbstractDocument
`addDocumentListener, addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, removeDocumentListener, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### formatString

    public static String formatString

  Die Formatmaske fuer die Datumseingabe.

Constructor Detail

### DateDocument

    public DateDocument(DateField textfield)

  Erzeugt ein neues Document fuer die uebergebene Textkomponente. Die Textkomponente muss hier uebergeben werden, damit eventuell gesetzte Formatierungsangaben wie zum Beispiel Tausendertrennzeichen nicht mit der Eingabe in der Oberflaeche ueberschrieben werden koennen.

Parameters:
  `textfield` - Die Textkomponente deren Eingaben hier ueberwacht werden.

Method Detail

### insertString

    public void insertString(int offset,
                             String s,
                             AttributeSet attributeSet)
                      throws BadLocationException

  Ueberprueft die Eingabe auf Gueltigkeit fuer die entsprechende Stelle im Datum(Tag/Monat/Jahr). Buchstaben und Sonderzeichne werden als Eingabe nicht akzeptiert. Ungültige Datuemer wie zum Beispiel der 30.02 oder der 31.04 werden nciht akzeptiert. Bei allen falschen Eingaben ertoent ein Signal, das auf die fehlerhafte Eingabe aufmerksam macht.

  Parameters:
    `offset` - Der Index im angezeigten String an der das neu eingegebene Zeichen eigefuegt werden soll.
    `s` - Das einzufuegende Zeichen.
    `attributeSet` - Attribute die fuer das eingegebene Zeichen beruecksichtigt werden sollen.
  Throws:
    `BadLocationException` - wenn ein ungueltiger Index uebergeben wird.

### remove

    public void remove(int offset,
                       int length)
                throws BadLocationException

  Loescht die Eingabe im Document an der uebergebenen Stelle in der uebergebenen Laenge.

  Parameters:
    `offset` - Die Startposition zum loeschen.
    `length` - Die Anzahl zu loeschender Zeichen.
  Throws:
    `BadLocationException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD