Example usage for com.google.gwt.user.client.ui LayoutPanel getWidget

List of usage examples for com.google.gwt.user.client.ui LayoutPanel getWidget

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui LayoutPanel getWidget.

Prototype

public Widget getWidget(int index) 

Source Link

Usage

From source file:hu.mapro.gwt.client.widget.ScrollableTabLayoutPanel.java

License:Apache License

public ScrollableTabLayoutPanel(double barHeight, Unit barUnit) {
    super(barHeight, barUnit);
    LayoutPanel panel = (LayoutPanel) getWidget();

    tabBar = (FlowPanel) panel.getWidget(0);

    tabWindow = tabBar.getElement().getParentElement();
    tabBarStyle = tabBar.getElement().getStyle();
    tabBarStyle.setLeft(tabBarLeft, Unit.PX);

    panel.setWidgetLeftRight(tabBar, barHeight, barUnit, barHeight, barUnit);
    panel.setWidgetTopHeight(tabBar, 0, Unit.PX, barHeight, barUnit);

    leftButton = new FlowPanel();
    panel.add(leftButton);//from w w  w  .  j  a v  a2  s  .  c  om
    panel.setWidgetLeftWidth(leftButton, 0, Unit.PX, barHeight, barUnit);
    panel.setWidgetTopHeight(leftButton, 0, Unit.PX, barHeight, barUnit);
    leftButton.addStyleName("gwt-TabLayoutPanelLeft");
    leftButton.addStyleName(bundle.css().leftDisabled());

    rightButton = new FlowPanel();
    panel.add(rightButton);
    panel.setWidgetRightWidth(rightButton, 0, Unit.PX, barHeight, barUnit);
    panel.setWidgetTopHeight(rightButton, 0, Unit.PX, barHeight, barUnit);
    rightButton.addStyleName("gwt-TabLayoutPanelRight");
    rightButton.addStyleName(bundle.css().rightDisabled());

    addSelectionHandler(new SelectionHandler<Integer>() {
        @Override
        public void onSelection(SelectionEvent<Integer> event) {
            updateButtons();
            com.google.gwt.core.client.Scheduler.get().scheduleDeferred(new ScheduledCommand() {
                @Override
                public void execute() {
                    ensureSelectedVisible();
                }
            });
        }
    });

    //      addAttachHandler(new Handler() {
    //         @Override
    //         public void onAttachOrDetach(AttachEvent event) {
    //            updateButtons();
    //         }
    //      });

    leftButton.addDomHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            if (getSelectedIndex() > 0) {
                selectTab(getSelectedIndex() - 1);
            }
        }
    }, ClickEvent.getType());

    rightButton.addDomHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            if (getSelectedIndex() < getWidgetCount() - 1) {
                selectTab(getSelectedIndex() + 1);
            }
        }
    }, ClickEvent.getType());

    updateButtons();
}