Example usage for com.google.gwt.user.client.ui TabLayoutPanel addSelectionHandler

List of usage examples for com.google.gwt.user.client.ui TabLayoutPanel addSelectionHandler

Introduction

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

Prototype

public HandlerRegistration addSelectionHandler(SelectionHandler<Integer> handler) 

Source Link

Usage

From source file:com.google.gwt.gadgets.sample.traveler.client.TravelerGadget.java

License:Apache License

private void buildUi(TravelerPreferences prefs) {
    String serverUrl = prefs.serverUrl().getValue();
    if (serverUrl == null || "".equals(serverUrl)) {
        String specUrl = GadgetsUtil.getUrlParameters("url");
        String staticContentUrl = specUrl.substring(0, specUrl.lastIndexOf('/'));
        serverUrl = staticContentUrl.substring(0, staticContentUrl.lastIndexOf('/'));
    }//  www .j  a va  2  s  .c o m
    if (!serverUrl.endsWith("/")) {
        serverUrl += "/";
    }

    travelerServletClient = new TravelerServletClient(serverUrl);
    errorNotifier = ErrorNotifier.getErrorNotifier();

    // Building personal tab

    final ResponseReceivedHandler<Object> refreshWhenDone = new ResponseReceivedHandler<Object>() {
        public void onResponseReceived(ResponseReceivedEvent<Object> event) {
            Response<Object> response = event.getResponse();
            if (response.getStatusCode() == 200) {
                refreshPersonalMap();
            } else {
                errorNotifier.showError(response.getStatusCode(), response.getText());
            }
        }
    };

    LocationHandler createHandler = new LocationHandler() {
        public void handle(Location location) {
            travelerServletClient.saveLocation(location, refreshWhenDone);
        }
    };

    LocationHandler deleteHandler = new LocationHandler() {
        public void handle(Location location) {
            travelerServletClient.deleteLocation(location, refreshWhenDone);
        }
    };

    personalMap = new TravelMap(createHandler, deleteHandler);
    refreshPersonalMap();

    // Building friends tab

    String noPhotoUrl = serverUrl + NO_PHOTO_NAME;
    final PersonBrowser browser = new PersonBrowser(people, FRIENDS_DOCK_HEIGHT, noPhotoUrl);
    final TravelMap friendsMap = new TravelMap();

    browser.setPersonClickedHandler(new PersonClickedHandler() {
        public void handle(String id) {
            friendsMap.clear();
            travelerServletClient.getUsersLocations(id, new ResponseReceivedHandler<JsArray<Location>>() {
                public void onResponseReceived(ResponseReceivedEvent<JsArray<Location>> event) {
                    Response<JsArray<Location>> response = event.getResponse();
                    if (response.getStatusCode() == 200) {
                        friendsMap.zoomOut();
                        friendsMap.showLocation(response.getData());
                    } else {
                        errorNotifier.showError(response.getStatusCode(), response.getText());
                    }
                }
            });
        }
    });

    DockLayoutPanel friendsTab = new DockLayoutPanel(Unit.PX);
    friendsTab.addNorth(browser, FRIENDS_DOCK_HEIGHT);
    friendsTab.add(friendsMap);

    // Building top level panel

    final TabLayoutPanel tabs = new TabLayoutPanel(1.5, Unit.EM);
    tabs.add(personalMap, "My Map");
    tabs.add(friendsTab, "Friends");
    tabs.setSize("100%", "100%");
    tabs.addSelectionHandler(new SelectionHandler<Integer>() {
        public void onSelection(SelectionEvent<Integer> event) {
            Widget widget = tabs.getWidget(event.getSelectedItem());
            if (widget instanceof RequiresResize) {
                ((RequiresResize) widget).onResize();
            }
        }
    });
    RootLayoutPanel.get().add(tabs);
}

From source file:com.rhizospherejs.gwt.showcase.client.ShowcaseEntryPoint.java

License:Open Source License

@Override
public void onModuleLoad() {
    // Injects styles shared by all tabs.
    Resources.INSTANCE.tabsCss().ensureInjected();

    // Create the main tab layout.
    final TabLayoutPanel tabs = new TabLayoutPanel(2, Unit.EM);
    tabs.setStyleName(Resources.INSTANCE.tabsCss().rhizosphereTabs(), true);
    tabs.add(new IntroTab(), "Introduction");
    tabs.add(OrgChartTab.get(), "Org Chart demo");
    tabs.add(BooksTab.get(), "Google Books demo");
    tabs.add(GoogleVisualizationTab.get(), "Google Visualization API demo");

    DockLayoutPanel dock = new DockLayoutPanel(Unit.EM);
    dock.addNorth(new HeaderBar(), 5);
    dock.add(tabs);/*from   ww w.  j av  a  2  s  .c o  m*/

    // History management.
    tabs.addSelectionHandler(new SelectionHandler<Integer>() {
        @Override
        public void onSelection(SelectionEvent<Integer> event) {
            String tabid = "";
            switch (event.getSelectedItem()) {
            case 0:
                tabid = "intro";
                break;
            case 1:
                tabid = "orgchart";
                break;
            case 2:
                tabid = "books";
                break;
            case 3:
                tabid = "gviz";
                break;
            default:
            }
            if (tabid.length() > 0) {
                History.newItem(tabid);
            }
        }
    });

    History.addValueChangeHandler(new ValueChangeHandler<String>() {
        @Override
        public void onValueChange(ValueChangeEvent<String> event) {
            String historyToken = event.getValue();
            tabs.selectTab(tabNumberFromToken(historyToken));
        }
    });

    tabs.selectTab(tabNumberFromToken(History.getToken()));
    RootLayoutPanel.get().add(dock);
}

From source file:de.fhrt.codenvy.bpmn.editor.widget.diagram.BpmnEditorDiagramWidget.java

License:Open Source License

private TabLayoutPanel initRootLayout() {
    TabLayoutPanel root = new TabLayoutPanel(0, Unit.PX);
    root.setSize("100%", "100%");
    root.add(diagramHtmlPanel, "Design");
    root.add(cmWidget, "Source");
    root.addStyleName("bpmnDigramWidget-tabLayoutPanel");
    root.addSelectionHandler(new SelectionHandler<Integer>() {

        @Override//from   ww  w.j  av a  2s .c o  m
        public void onSelection(SelectionEvent<Integer> event) {
            if (event.getSelectedItem() == 1) {
                Timer t = new Timer() {
                    @Override
                    public void run() {
                        cmWidget.refresh();
                    }
                };
                t.schedule(10);
            }
        }
    });
    return root;
}