/* * Copyright 2000-2014 Vaadin Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.vaadin.tests; import com.vaadin.server.ClassResource; import com.vaadin.shared.ui.label.ContentMode; import com.vaadin.ui.Component; import com.vaadin.ui.Embedded; import com.vaadin.ui.GridLayout; import com.vaadin.ui.HorizontalLayout; import com.vaadin.ui.Label; import com.vaadin.ui.Layout; import com.vaadin.ui.LegacyWindow; import com.vaadin.ui.Panel; import com.vaadin.ui.TabSheet; import com.vaadin.ui.VerticalLayout; /** * This example demonstrates layouts. Layouts are populated with sample Vaadin * UI components. * * @author Vaadin Ltd. * @since 4.0.0 * */ public class LayoutDemo extends com.vaadin.server.LegacyApplication { /** * Initialize Application. Demo components are added to main window. */ @Override public void init() { final LegacyWindow mainWindow = new LegacyWindow("Layout demo"); setMainWindow(mainWindow); // // Create horizontal ordered layout // final HorizontalLayout layoutA = new HorizontalLayout(); // Add 4 panels fillLayout(layoutA, 4); // // Create vertical ordered layout // final VerticalLayout layoutB = new VerticalLayout(); // Add 4 panels fillLayout(layoutB, 4); // // Create grid layout // final GridLayout layoutG = new GridLayout(4, 4); // Add 16 panels components fillLayout(layoutG, 16); // // Create grid layout // final GridLayout layoutG2 = new GridLayout(4, 4); // Add 4 panels with absolute coordinates (diagonally) layoutG2.addComponent(getExampleComponent("x=0, y=0"), 0, 0); layoutG2.addComponent(getExampleComponent("x=1, y=1"), 1, 1); layoutG2.addComponent(getExampleComponent("x=2, y=2"), 2, 2); layoutG2.addComponent(getExampleComponent("x=3, y=3"), 3, 3); // Add 4 pictures with absolute coordinates (diagonally) layoutG2.addComponent(getExamplePicture("x=3, y=0"), 3, 0); layoutG2.addComponent(getExamplePicture("x=2, y=1"), 2, 1); layoutG2.addComponent(getExamplePicture("x=1, y=2"), 1, 2); layoutG2.addComponent(getExamplePicture("x=0, y=3"), 0, 3); // // Create TabSheet // final TabSheet tabsheet = new TabSheet(); tabsheet.setCaption("Tabsheet, above layouts are added to this component"); tabsheet.addTab(layoutA, "Horizontal ordered layout", null); tabsheet.addTab(layoutB, "Vertical ordered layout", null); tabsheet.addTab(layoutG, "First grid layout", null); tabsheet.addTab(layoutG2, "Second grid layout", null); // // Add demo layouts to main window // mainWindow.addComponent(new Label( "