Package org.gwtoolbox.sample.widget.client.layout

Source Code of org.gwtoolbox.sample.widget.client.layout.DeckLayoutSample

package org.gwtoolbox.sample.widget.client.layout;

import com.google.gwt.dom.client.Style;
import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.*;
import org.gwtoolbox.ioc.core.client.annotation.Component;
import org.gwtoolbox.ioc.core.client.annotation.Order;
import org.gwtoolbox.sample.widget.client.SamplePanel;
import org.gwtoolbox.widget.client.button.SimpleToggleButton;
import org.gwtoolbox.widget.client.button.version2.Button;
import org.gwtoolbox.widget.client.panel.layout.DeckLayout;
import org.gwtoolbox.widget.client.panel.layout.DockLayout;

/**
* @author Uri Boness
*/
@Component
@Order(35)
@LayoutSample
public class DeckLayoutSample extends ResizeComposite implements SamplePanel {

    public DeckLayoutSample() {

        LayoutPanel panel = new LayoutPanel();
        final DeckLayout deck = new DeckLayout();
        deck.setAnimationEnabled(true);
        panel.add(deck);
        panel.setWidgetLeftRight(deck, 50, Style.Unit.PX, 50, Style.Unit.PX);
        panel.setWidgetTopBottom(deck, 50, Style.Unit.PX, 50, Style.Unit.PX);

        FlowPanel buttons = new FlowPanel();

        DockLayout main = new DockLayout();
        main.addNorth(buttons, 50);
        main.add(panel);

        createHTML(buttons, deck, "Red", "#ff9999");
        createHTML(buttons, deck, "Green", "#ccffcc");
        createHTML(buttons, deck, "Blue", "#cacaf7");
        createHTML(buttons, deck, "Yellow", "#ffcc66");

        Button clearButton = new Button("Clear Selection", new ClickHandler() {
            public void onClick(ClickEvent event) {
                deck.clearSelection();
            }
        });
        clearButton.getElement().getStyle().setMarginLeft(10, Style.Unit.PX);
        buttons.add(clearButton);

        SimpleToggleButton enableDisableButton = new SimpleToggleButton("Disable Animation");
        enableDisableButton.addChangeHandler(new ChangeHandler() {
            public void onChange(ChangeEvent event) {
                deck.setAnimationEnabled(!deck.isAnimationEnabled());
            }
        });
        enableDisableButton.getElement().getStyle().setMarginLeft(10, Style.Unit.PX);
        buttons.add(enableDisableButton);

        initWidget(main);

    }

    public String getName() {
        return "Deck";
    }

    public Widget getContentWidget() {
        return this;
    }

    public void reset() {
    }


    //================================================ Helper Methods ==================================================

    private static void createHTML(FlowPanel buttons, final DeckLayout layout, String text, String color) {

        final HTML html = new HTML(text);
        html.getElement().getStyle().setBackgroundColor(color);
        html.setSize("100%", "100%");
        layout.add(html);

        Button button = new Button(text, new ClickHandler() {
            public void onClick(ClickEvent event) {
                layout.selectWidget(html);
            }
        });

        button.getElement().getStyle().setMarginLeft(10, Style.Unit.PX);

        buttons.add(button);

    }
}
TOP

Related Classes of org.gwtoolbox.sample.widget.client.layout.DeckLayoutSample

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.