Package-level Javadoc
Author: IBM

Provides classes that help communicate proper content for fields in dialogs and wizards.

## Package Specification

This package provides classes that can be used to guide a dialog user through choosing appropriate content for fields in a dialog or wizard.

A `ContentProposalAdapter` can be attached to an arbitrary control to provide a popup showing content proposals. These proposals appear when the defined assist keystroke is invoked. The `ContentProposalAdapter` manages the creation, hiding, and showing of the proposal popup, as well as the proper handling of key events between the adapted control and its popup. Implementors of `IControlContentAdapter` allow the adapter to set and retrieve the contents of the supplied control.

An `AutoCompleteField` configures a `ContentProposalAdapter` in a manner that supports automatic field completion popups that filter based on the control's contents.

`ControlDecoration` can be used to decorate an arbitrary control with an image that communicates information about the control's content. Decorations can be used to show additional information about a field, such as its status, or a cue that shows availability of content proposals. Decorations are defined in pre-defined locations relative to the control, and can be set up to show at all times, or only when the control has focus. It is up to the client to ensure there is enough space allocated to render the control decoration. Decorations can optionally show descriptive text when the user hovers over them.

`DecoratedField` can also be used to decorate a control. The main difference is that decorated fields reserve space for multiple decorations in particular locations around the control. To do this, the field manages the creation of the field's control, using a specialized layout to ensure there is adequate space reserved for decorations around the control. Other than using the field to manage the decorations themselves, clients are expected to interact directly with the control.

Note: None of the classes in this package maintain global state.