# Package de.esprit.appsuite.database.dbgui.field

Contains a set of input fields for user input of various data types.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  Field<T> | This interface must be implemented by all input fields in order to ensure a common behavior.
  FieldEditor<T> | This interface defines a FieldEditor, which is supposed to be a dialog who provides special editing capabilities for a particular data type of an underlying field.
  SpinEvent.Listener |
  SpinEvent.Source |
  Spinnable | This class defines methods used by the SpinnerButtons in order to control a SpinnerField

- Class Summary
  Class | Description
  --- | ---
  AbstractBooleanField | This is the abstract base class for boolean input fields.
  AbstractButtonField<T> | This is the abstract base class for all Button fields.
  AbstractCharField<T> | This field implements a checked length text input.
  AbstractChoiceField<T> | This is the abstract base class for all types of choice fields.
  AbstractDecimalField<T> | This field accepts only decimal number input.
  AbstractFieldContainer<T> | This container serves as a wrapper class for Field input components.
  AbstractLabelField | This is the abstract base class for all label display fields.
  AbstractNumberField<T> | Base class for all number input fields.
  AbstractPasswordField | This is the abstract base class for all password input fields.
  AbstractTextAreaField | This is the abstract base class for all text area input fields.
  AbstractTextField<T> | This is the abstract base class for all text input fields.
  AbstractTristateField | This is the abstract base class for tri-state input fields.
  AllFieldsPanel | This is a demo panel that contains all types of input fields.
  BooleanField | This is the bottom implementation of a boolean field.
  CalendarDateField | This is a `DateField` with a button that opens a `CalendarDateDialog`
  CalendarTimestampField | This is a `TimestampField` with a button that opens a `CalendarTimestampDialog`
  CharField | This field implements a checked length text input.
  ClassBrowseField | This field browses through the class hierarchy showing up with sub-packages as well as class files
  ColumnChoiceField | This field provides the fixed choice values for a database column as defined by the according DBColumnChoice values.
  ColumnLabel | This class displays the label of a Field component.
  CountryChoiceField | This ComboBox allows for choosing a `Country` constant.
  DateField | This field provides a means for Date input.
  DecimalDisplayField | This is a read only field for decimal numbers.
  DirectoryField | This field is allows for entering a directory path name.
  DisplayField | This is a special read-only field for displaying values only.
  DoubleField | This class models a decimal value as a Double object
  DurationField | This field provides a means for duration input.
  EnumChoiceField<T> | This field presents the available enums for choice
  FieldAdapter | This is a helper class for encapsulating field properties
  FieldCheckList | This class collects min/max value entries for field input checking.
  FieldPanel | Special panel for convenient layouting and group-management of database fields.
  FileField | This field allows for entering a file path name.
  FileNameInputField | This Field just returns the entered String readyly casted as a File Object This Field is used by `DirectoryField` and should not be used for other purposes.
  FloatField | This class models a decimal value as a Float object
  GenderField | This provides two RadioButtons for specifying whether a person is a MR or a MRs.
  InputValidator | This class encapsulates the functionality for checking the validity of field input.
  IntegerField | This field accepts only integer number input.
  LabelField | This is a display-only field for text.
  LanguageChoiceField | This ComboBox allows for choosing a `Language` constant.
  ListCountField | This field displays the itemcount of a ListModel
  LongField | This field accepts long or integer number input.
  PasswordField | This is the bottom implementation of a PasswordField
  RadioButtonField | This field provides a set of RadioButtons as a choice.
  SliderField | This field provides a set of RadioButtons as a choice.
  SpinEvent | This event is fired by a `SpinnerField` when it's value changes
  SpinnerButtons | These Spinner Buttons are used to step the value in a Spinnable instance
  SpinnerField | This is an integer field which is controlled by Spinner buttons.
  TimeField | This field provides a means for time input.
  TimeSpanField | This field provides a means for timespan input.
  TimestampField | This field provides a means for timestamp input.
  TristateField | This is a checkbox component that allows to toggle between three states: Boolean.TRUE, Boolean.FALSE and null
  UnitLabel | This JLabel is used as the default unit component and is placed behind the field when the field is added to a FieldPanel
  VarcharField | This is a TextArea like input field for varchar columns.
  VarcharScrollField | This is a TextArea like input field for varchar columns.

- Enum Summary
  Enum | Description
  --- | ---
  InputCheckType | This enum defines input check types for field inputs

- Exception Summary
  Exception | Description
  --- | ---
  InputValidationException | This exception is thrown by the InputValidator if input check fails
  InvalidFieldInputException | This Exception is thrown by Field classes that create Objects from their String values.

## Package de.esprit.appsuite.database.dbgui.field Description

Contains a set of input fields for user input of various data types. All these fields implement the Field interface and thus can be handled in a common way. For instance they can easily be placed in a FieldPanel for constructing an input form.
Note that for each different type of GUI component used there is a top level abstract class that implements the Field interface. This is done for ease of mainenance - when the field interface changes you might only have to adapt these top level abstract classes.

Copyright © 2014 EsprIT-Systems. All Rights Reserved.