A provider is a Java class that can be associated to a graphical screen such as a simple form, a multi-tab form, a wizard, an explorer, etc. This association is implemented into the XML definition file.
In a "provider" class, it is possible to change the content and the graphical aspect of a screen because every graphical object such as buttons zone, fields entries, title, information zone, can be accessed.
In the particular case of a provider "of document", the provider receives an internal document as parameter.It enables to manage the storage of the values assigned to the form fields. Then, the provider can affect these field values when initializing the form as well as dynamically customize the graphical interface.
A "template" class enables to create various types of screens: form, sheet, wizard -(ex. CtlAbstractForm).
A class representing the document: AbstractDocument. This class maintains a list of fields corresponding to the fields described in the definition XML document.
Two classes inherit from the document class:
The following diagram presents the elements which are involved in a simple form case.
The provider can interfere both on the user interface and on the document. Each document field is associated to a graphical element. Each graphical element can be a set of graphical components (widget).
Example
A date-type field can be displayed as an entering zone, an access button to a calendar, and a button to empty the value.