Building pages
A DomUI application is a set of pages, each of them a Java class. This section describes the page model itself: what a page is, how its state and lifetime are managed, how it is addressed in an URL, and how it is translated.
- Building your first page - what a page is, how its
class name becomes an URL, and what
createContent()does, in three small examples. - Using components - what a component is, the
state every input control has, how
getValue()reports bad input and how a control reports a change. - Using databases -
QCriteriaas the question andQDataContextas the thing that runs it, restrictions and combinators, and querying over a relation. - Typed properties - replacing the property strings in a query with generated, compile-time checked ones.
- Data binding - letting a control and a model
property follow each other, which way each kind of binding moves, and what
bindErrors()is for. - Page navigation - what a page keeps between
requests, how
UIGotomoves to another one, and the shelf of pages that the breadcrumb is made of. - Showing rows - the model, the RowRenderer and the DataTable, a search screen built on a SearchPanel, and why a list re-queries when you come back to it.
- Metadata - saying once, on the class, what every screen showing it needs to know: labels, limits, presentation - and translating all of it through DomUI's own resource bundles.
- Telling something to a user - the message box, the message that stays on the page, the exception dialog, and the error fence that decides where a message is shown.
- Layout - the panel a page's content sits in, the bar its buttons sit on, tabs - and how to make a piece of screen of your own that several pages can use.
- Writing a component - a component is a
class implementing
IControl; whatAbstractDivControlalready does, when a control decides its value changed, and whybindValueis notvalue.
