Adichatz defines a new layer composed of controllers which forms a main feature of the component-driven architecture.
A controller is a composition of Rich UI components, as a ManagedForm or simple SWT components as Text.
The controller manages links between UI components and entities (see Model layer) to ensure the connection with locks, dirty and lazy fetches management.
A life cycle, in which the developer can act, is combined to the controller.
Controllers can be divided in 4 categories:
Collection controllers hosting entity
ArgPShelfController | Composition around a PShelf (see nebula project). Children should be PShelftemControllers and are defined by a List of values (like a combo) and so is not determined like for PShelfController. |
ArgTabFolderController | Composition around a CTabFolder. Children should be CtabItemControllers and are defined by a List of values (like a combo) and so is not determined like for CtabFolderController. |
CompositeController | Composition around a Composite. Children available are the same as those of SectionController. |
CompositeBagController | Composition around a specific control called CompositeBag: A bag of composites. Only one composite is displayed. |
CTabItemController | Composition around a CTabItem. Children available are the same as those of SectionController. |
FormPageController | Composition around a ManagedForm for simulating a page of an editor. |
GroupController | Composition around a Group. Children available are the same as those of SectionController. |
IncludeController | Specific controller to manage include process (see axml Files) |
PGroupController | Composition around a PGroup (nebula project). |
PShelfItemController | Composition around a PShelfItem (nebula project). |
SashFormController | Composition around a SashForm. |
ScrolledCompositeController | Composition around a SharedScrolledComposite. |
ScrolledFormController | Composition around a ScrolledForm (Provides scrolling and message zone). |
ScrolledPGroupController | Composition around a PGroup (nebula project). Content composite is a scrolled composite. |
SectionController | Composition around a Section. |
Field controllers
CComboController | Composition of a CCombo. Style AdiSWT.FIELD_ASSIST was added when Field Assist is demanded. |
CheckBoxController | Composition of a Button with style SWT.CHECK. Corresponding type in the database is boolean. |
ComboController | Composition of a Combo. Style AdiSWT.FIELD_ASSIST was added when Field Assist is demanded. |
DateTextController | Composition of a DateText. DateText is an UI Adichatz component which allows to manage date in several format (Date, DateTime…). |
EditableFormTextController | Composition of a FormText. An easy way to manage URL tag and image in your application. Futhermore, the controller provides a way to edit and change the text value. |
ExtraTextController | The ExtraController is build around a specific control created for Adichatz. This is a FieldController that means that it can be linked to the databinding service. |
FileController | Composition of a FileText: a specific control which manage file path. |
FontTextController | controller for choosing font. |
GMapController | Composition of a GMap control. GMap is a composite control which contains a browser. A http request is send to google and map result is displayed. |
HyperlinkController | Composition of a Hyperlink. |
ImageViewerController | Receive an URL or file path or data and display an image. |
LabelController | Composition of a Label. |
MultiChoiceController | Composition of a MultiChoice. a multiChoice is a special widget that allows you to multiple values inside a list of choices. |
NumericTextController | Composition of a NumericText. NumericText is a Adichatz UI component. Corresponding types in the database are all numeric types. Format could be specified. |
RadioGroupController | Composition of a list of Buttons with style SWT.RADIO. |
RefRadioGroupController | Similar to a referenced RadioGroupController, but list of Buttons is determined by a persistent set or a query. |
RefTextController | Composition of a RefText. RefText (referenced text) is an UI Adichatz component which allows to manage Many-To-One relationship. Styles AdiSWT.FIND_BUTTON, AdiSWT.DELETE_BUTTON and AdiSWT.EDITOR_BUTTON are added when a find button, a delete button (for clearing value) and a edit button (for opening an editor) are demanded. |
RGBTextController | Controller for choosing RGB (color). |
RichTextController | Composition of a RichText. a rich text is a special widget that allows you to manage the bold, italic, underline or URLs in the text. |
StarRatingController | Composition of a StarRating. a starRating is a special widget that allows you to select rating thru a number of stars. |
TextController | Composition of a Text. Corresponding type in the database is varchar. |
Other Collection controllers
ButtonBarController | Composition around a bar of buttonControllers and separators. You can specify an orientation. | |
CTabFolderController | Composition around a CTabFolder. Children should be CTabItemControllers. | |
GridController | Composition around nebula components Grid and GridViewer (nebula project). |
ManagedToolBarController | Specific ToolBar used in section. Children should be ActionControllers. | |
PShelfController | Composition around nebula component PShelf. Children should be PShelfItemControllers. | |
TabularController | parent controller of TableController, GridController among others. | |
TableController | Composition around a Table and a TableViewer. | |
ToolBarController | Composition around a ToolBar. Children should be ToolItemControllers. | |
TreeController | Composition around a Tree and a TreeViewer. | |
Other controllers
ActionController | Child controller of ManagedToolBarController or component of a ButtonController. |
ButtonController | Composition of a Button. It could contain, an Action Controller or define its own action. |
ToolItemController | Child controller of ToolItemController, composition of a ToolItem. |
FormattedTextController | Composition around a FormattedText (nebula project). |
GridColumnController | Child controller of GridController (nebula project) corresponding to a column. |
GridColumnGroupController | Child controller of GridController (nebula project) corresponding to a group of columns. |
PGroupMenuController | Menu of a PGroup (nebula project). |
PGroupToolItemController | Tool Item of a PGroup (nebula project). |
TableColumnController | Child controller of TableController, composition of a TableViewerColumn. |