aboutsummaryrefslogtreecommitdiffstats
path: root/documentation/components/components-interfaces.asciidoc
diff options
context:
space:
mode:
authorMarko Gronroos <magi@vaadin.com>2016-07-22 20:51:47 +0300
committerArtur Signell <artur@vaadin.com>2016-08-05 10:19:47 +0300
commit3ea6a0087b140a13ed0685afa2ffe08a45b82719 (patch)
tree16636b31df87dc035c871536281dbc0be5e4305e /documentation/components/components-interfaces.asciidoc
parent649dba410d825c8a350aeda9a44a591197ec4bc8 (diff)
downloadvaadin-framework-3ea6a0087b140a13ed0685afa2ffe08a45b82719.tar.gz
vaadin-framework-3ea6a0087b140a13ed0685afa2ffe08a45b82719.zip
Revised component abstractions diagram (#19897).
Change-Id: I09f86fce44600cce4365bd1e80f8d4ef1a2e415c
Diffstat (limited to 'documentation/components/components-interfaces.asciidoc')
-rw-r--r--documentation/components/components-interfaces.asciidoc29
1 files changed, 8 insertions, 21 deletions
diff --git a/documentation/components/components-interfaces.asciidoc b/documentation/components/components-interfaces.asciidoc
index 4801ec52b1..5d266617fd 100644
--- a/documentation/components/components-interfaces.asciidoc
+++ b/documentation/components/components-interfaces.asciidoc
@@ -15,21 +15,14 @@ and the client.
This section gives details on the basic component interfaces and abstractions.
The layout and other component container abstractions are described in
-<<dummy/../../../framework/layout/layout-overview.asciidoc#layout.overview,"Managing
-Layout">>. The interfaces that define the Vaadin data model are described in
-<<dummy/../../../framework/datamodel/datamodel-overview.asciidoc#datamodel.overview,"Binding
-Components to Data">>.
+<<dummy/../../../framework/layout/layout-overview.asciidoc#layout.overview,"Managing Layout">>.
+The interfaces that define the Vaadin data model are described in <<dummy/../../../framework/datamodel/datamodel-overview.asciidoc#datamodel.overview,"Binding Components to Data">>.
[[figure.components.interfaces]]
-.Component Interfaces and Abstractions
-image::img/component-abstractions-hi.png[]
+.Component interfaces and abstractions
+image::img/component-abstractions-hi.png[width=100%, scaledwidth=100%]
-((("[classname]#Paintable#")))
-((("[classname]#VariableOwner#")))
-All components also implement the [classname]#Paintable# interface, which is
-used for serializing ("painting") the components to the client, and the reverse
-[classname]#VariableOwner# interface, which is needed for deserializing
-component state or user interaction from the client.
+All components are connectors that connect to the client-side widgets.
((("[classname]#Serializable#")))
In addition to the interfaces defined within the Vaadin framework, all
@@ -67,20 +60,19 @@ the [methodname]#detach()# method. If the parent of an added component is
already connected to the UI, the [methodname]#attach()# is called immediately
from [methodname]#setParent()#.
-
[source, java]
----
public class AttachExample extends CustomComponent {
public AttachExample() {
}
-
+
@Override
public void attach() {
super.attach(); // Must call.
-
+
// Now we know who ultimately owns us.
ClassResource r = new ClassResource("smiley.jpg");
- Image image = new Image("Image:", r);
+ Image image = new Image("Image:", r);
setCompositionRoot(image);
}
}
@@ -89,7 +81,6 @@ public class AttachExample extends CustomComponent {
The attachment logic is implemented in [classname]#AbstractComponent#, as
described in <<components.interfaces.abstractcomponent>>.
-
((("[classname]#Component# interface")))
[[components.interfaces.abstractcomponent]]
@@ -97,7 +88,6 @@ described in <<components.interfaces.abstractcomponent>>.
((("[classname]#AbstractComponent#", id="term.components.interfaces.abstractcomponent", range="startofrange")))
-
[classname]#AbstractComponent# is the base class for all user interface
components. It is the (only) implementation of the [classname]#Component#
interface, implementing all the methods defined in the interface.
@@ -112,6 +102,3 @@ Creation of new components and serialization is described in
with the Server-Side">>.
(((range="endofrange", startref="term.components.interfaces.abstractcomponent")))
-
-
-