/**
* Sencha GXT 3.0.0b - Sencha for GWT
* Copyright(c) 2007-2012, Sencha, Inc.
* licensing@sencha.com
*
* http://www.sencha.com/products/gxt/license/
*/
package com.sencha.gxt.explorer.client.tabs;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.logical.shared.SelectionEvent;
import com.google.gwt.event.logical.shared.SelectionHandler;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
import com.sencha.gxt.examples.resources.client.Resources;
import com.sencha.gxt.examples.resources.client.TestData;
import com.sencha.gxt.explorer.client.model.Example.Detail;
import com.sencha.gxt.widget.core.client.PlainTabPanel;
import com.sencha.gxt.widget.core.client.TabItemConfig;
import com.sencha.gxt.widget.core.client.TabPanel;
import com.sencha.gxt.widget.core.client.info.Info;
@Detail(name = "Basic Tabs", category = "Tabs", icon = "basictabs")
public class BasicTabExample implements IsWidget, EntryPoint {
public Widget asWidget() {
VerticalPanel vp = new VerticalPanel();
vp.setSpacing(10);
String txt = TestData.DUMMY_TEXT_SHORT;
SelectionHandler<Widget> handler = new SelectionHandler<Widget>() {
@Override
public void onSelection(SelectionEvent<Widget> event) {
TabPanel panel = (TabPanel) event.getSource();
Widget w = event.getSelectedItem();
TabItemConfig config = panel.getConfig(w);
Info.display("Message", "'" + config.getText() + "' Selected");
}
};
TabPanel folder = new TabPanel();
folder.addSelectionHandler(handler);
folder.setWidth(450);
HTML shortText = new HTML(txt);
shortText.addStyleName("pad-text");
folder.add(shortText, "Short Text");
HTML longText = new HTML(txt + "<br><br>" + txt);
longText.addStyleName("pad-text");
folder.add(longText, "Long Text");
final PlainTabPanel panel = new PlainTabPanel();
panel.setPixelSize(450, 250);
panel.addSelectionHandler(handler);
Label normal = new Label("Just a plain old tab");
normal.addStyleName("pad-text");
panel.add(normal, "Normal");
Label iconTab = new Label("Just a plain old tab with an icon");
iconTab.addStyleName("pad-text");
TabItemConfig config = new TabItemConfig("Icon Tab");
config.setIcon(Resources.IMAGES.table());
panel.add(iconTab, config);
Label disabled = new Label("This tab should be disabled");
disabled.addStyleName("pad-text");
config = new TabItemConfig("Disabled");
config.setEnabled(false);
panel.add(disabled, config);
vp.add(folder);
vp.add(panel);
return vp;
}
public void onModuleLoad() {
RootPanel.get().add(asWidget());
}
}