diff options
author | Markus Koivisto <markus@vaadin.com> | 2016-01-22 14:55:18 +0200 |
---|---|---|
committer | Markus Koivisto <markus@vaadin.com> | 2016-01-22 14:55:18 +0200 |
commit | 99d6de546c74f0eed230ea8253dda6b85109d2e7 (patch) | |
tree | 10fc21c557566fe3241e6e13499df18d80f8dcb2 /documentation/components/components-overview.asciidoc | |
parent | 610736d9f373d4b37fd39ff8f90aabd13eab7926 (diff) | |
download | vaadin-framework-99d6de546c74f0eed230ea8253dda6b85109d2e7.tar.gz vaadin-framework-99d6de546c74f0eed230ea8253dda6b85109d2e7.zip |
Add documentation to master branch
Change-Id: I2504bb10f1ae73ec0cbc08b7ba5a88925caa1674
Diffstat (limited to 'documentation/components/components-overview.asciidoc')
-rw-r--r-- | documentation/components/components-overview.asciidoc | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/documentation/components/components-overview.asciidoc b/documentation/components/components-overview.asciidoc new file mode 100644 index 0000000000..c1d133f9f9 --- /dev/null +++ b/documentation/components/components-overview.asciidoc @@ -0,0 +1,81 @@ +--- +title: Overview +order: 1 +layout: page +--- + +[[components.overview]] += Overview + +Vaadin provides a comprehensive set of user interface components and allows you +to define custom components. <<figure.uicomponents>> illustrates the inheritance +hierarchy of the UI component classes and interfaces. Interfaces are displayed +in gray, abstract classes in orange, and regular classes in blue. An annotated +version of the diagram is featured in the __Vaadin Cheat Sheet__. + +[[figure.uicomponents]] +.User Interface Component Class Hierarchy +image::img/component-diagram-hi.png[] + +((("[classname]#Component#"))) +At the top of the interface hierarchy, we have the [classname]#Component# +interface. +((("[classname]#AbstractComponent#"))) +At the top of the class hierarchy, we have the [classname]#AbstractComponent# +class. +((("[classname]#AbstractField#"))) +((("[classname]#AbstractComponentContainer#"))) +It is inherited by two other abstract classes: [classname]#AbstractField#, +inherited further by field components, and +[classname]#AbstractComponentContainer#, inherited by various container and +layout components. Components that are not bound to a content data model, such +as labels and links, inherit [classname]#AbstractComponent# directly. + +((("layout"))) +((("[classname]#Layout#"))) +The layout of the various components in a window is controlled, logically, by +layout components, just like in conventional Java UI toolkits for desktop +applications. In addition, with the [classname]#CustomLayout# component, you can +write a custom layout as an HTML template that includes the locations of any +contained components. Looking at the inheritance diagram, we can see that layout +components inherit the [classname]#AbstractComponentContainer# and the +[classname]#Layout# interface. Layout components are described in detail in +<<dummy/../../../framework/layout/layout-overview.asciidoc#layout.overview,"Managing +Layout">>. + +((("[classname]#Window#"))) +Looking at it from the perspective of an object hierarchy, we would have a +[classname]#Window# object, which contains a hierachy of layout components, +which again contain other layout components, field components, and other visible +components. + +((("Sampler"))) +((("JavaDoc"))) +You can browse the built-in UI components of Vaadin library in the Sampler +application of the Vaadin Demo. The Sampler shows a description, JavaDoc +documentation, and a code samples for each of the components. + +In addition to the built-in components, many components are available as +add-ons, either from the Vaadin Directory or from independent sources. Both +commercial and free components exist. The installation of add-ons is described +in +<<dummy/../../../framework/addons/addons-overview.asciidoc#addons.overview,"Using +Vaadin Add-ons">>. + + +[NOTE] +.Vaadin Cheat Sheet and Refcard +==== +<<figure.uicomponents>> is included in the Vaadin Cheat Sheet that illustrates +the basic relationship hierarchy of the user interface components and data +binding classes and interfaces. You can download it at http://vaadin.com/book. + +The diagram is also included in the six-page DZone Refcard, which you can find +at https://vaadin.com/refcard. + +==== + + + + + |