From a1b265c318dbda4a213cec930785b81e4c0f7d2b Mon Sep 17 00:00:00 2001
From: elmot <elmot@vaadin.com>
Date: Fri, 25 Sep 2015 16:40:44 +0300
Subject: Framework documentation IN

Change-Id: I767477c1fc3745f9e1f58075fe30c9ac8da63581
---
 documentation/layout/layout-root-layout.asciidoc | 61 ++++++++++++++++++++++++
 1 file changed, 61 insertions(+)
 create mode 100644 documentation/layout/layout-root-layout.asciidoc

(limited to 'documentation/layout/layout-root-layout.asciidoc')

diff --git a/documentation/layout/layout-root-layout.asciidoc b/documentation/layout/layout-root-layout.asciidoc
new file mode 100644
index 0000000000..86bab9d587
--- /dev/null
+++ b/documentation/layout/layout-root-layout.asciidoc
@@ -0,0 +1,61 @@
+---
+title: UI, Window, and Panel Content
+order: 2
+layout: page
+---
+
+[[layout.root-layout]]
+= UI, Window, and Panel Content
+
+The [classname]#UI#, [classname]#Window#, and [classname]#Panel# all have a
+single content component, which you need to set with [methodname]#setContent()#.
+The content is usually a layout component, although any component is allowed.
+
+
+[source, java]
+----
+Panel panel = new Panel("This is a Panel");
+VerticalLayout panelContent = new VerticalLayout();
+panelContent.addComponent(new Label("Hello!"));
+panel.setContent(panelContent);
+
+// Set the panel as the content of the UI
+setContent(panel);
+----
+
+The size of the content is the default size of the particular layout component,
+for example, a [classname]#VerticalLayout# has 100% width and undefined height
+by default (this coincides with the defaults for [classname]#Panel# and
+[classname]#Label#). If such a layout with undefined height grows higher than
+the browser window, it will flow out of the view and scrollbars will appear. In
+many applications, you want to use the full area of the browser view. Setting
+the components contained inside the content layout to full size is not enough,
+and would actually lead to an invalid state if the height of the content layout
+is undefined.
+
+
+[source, java]
+----
+// First set the root content for the UI
+VerticalLayout content = new VerticalLayout();
+setContent(content);
+
+// Set the content size to full width and height
+content.setSizeFull();
+
+// Add a title area on top of the screen. This takes
+// just the vertical space it needs.
+content.addComponent(new Label("My Application"));
+
+// Add a menu-view area that takes rest of vertical space
+HorizontalLayout menuview = new HorizontalLayout();
+menuview.setSizeFull();
+content.addComponent(menuview);
+----
+
+See
+<<dummy/../../../framework/layout/layout-settings#layout.settings.size,"Layout
+Size">> for more information about setting layout sizes.
+
+
+
-- 
cgit v1.2.3

