Book Image

Vaadin 7 UI Design By Example: Beginner's Guide

Book Image

Vaadin 7 UI Design By Example: Beginner's Guide

Overview of this book

Vaadin is a mature, open-source, and powerful Java framework used to build modern web applications in plain Java. Vaadin brings back the fun of programming UI interfaces to the web universe. No HTML, no CSS, no JavaScript, no XML. Vaadin lets you implement web user interfaces using an object oriented model, similar to desktop technologies such as Swing and AWT. Vaadin 7 UI Design By Example: Beginner's Guide is an engaging guide that will teach you how to develop web applications in minutes. With this book, you will Develop useful applications and learn basics of Java web development. By the end of the book you will be able to build Java web applications that look fantastic. The book begins with simple examples using the most common Vaadin UI components and quickly move towards more complex applications as components are introduced chapter-by-chapter. Vaadin 7 UI Design By Example: Beginner's Guide shows you how to use Eclipse, Netbeans, and Maven to create Vaadin projects. It then demonstrates how to use labels, text fields, buttons, and other input components. Once you get a grasp of the basic usage of Vaadin, the book explains Vaadin theory to prepare you for the rest of the trip that will enhance your knowledge of Vaadin UI components and customization techniques.
Table of Contents (17 chapters)
Vaadin 7 UI Design By Example Beginner's Guide
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
Index

Time for action – creating a widget


We are going to develop a custom widget to show a marquee. Follow these steps to create your first widget:

  1. Create a new Vaadin project with the name myfistwidget using your IDE.

  2. Create a new class for the client side widget myfirstwidget.client.MarqueeLabelWidget:

    package myfirstwidget.client;
    
    import com.google.gwt.dom.client.Style.Position;
    import com.google.gwt.dom.client.Style.Unit;
    import com.google.gwt.user.client.Element;
    import com.google.gwt.user.client.Timer;
    import com.google.gwt.user.client.ui.Label;
    
    public class MarqueeLabelWidget extends Label {
      
    // ...
    
      public MarqueeLabelWidget() {
        final Element element = getElement();
        element.getStyle().setPosition(Position.RELATIVE);
    
        Timer timer = new Timer() {
          private int left = 0;
    
          @Override
          public void run() {
            element.getStyle().setLeft(left, Unit.PX);
            left++;
          }
        };
    
        timer.scheduleRepeating(100);
      }
    }
  3. Create a new myfirstwidget.client.MarqueeLabelState...