package org.gwtoolbox.sample.widget.client.layout;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.DOM;
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.panel.layout.SplitLayout;
/**
* @author Uri Boness
*/
@Component
@Order(20)
@LayoutSample
public class SplitLayoutSample extends ResizeComposite implements SamplePanel {
public SplitLayoutSample() {
final SplitLayout split = new SplitLayout();
final HTML north = new HTML("North");
split.addNorth(north, 100);
split.addNorth(new HTML("North 2"), 100);
final HTML south = new HTML("South");
split.addSouth(south, 100);
split.addSouth(new HTML("South 2"), 100);
// split.addSouth(new HTML("South 2"), 100);
final HTML east = new HTML("East");
split.addEast(east, 100);
split.addEast(new HTML("East 2"), 100);
final HTML west = new HTML("West");
split.addWest(west, 100);
split.addWest(new HTML("West 2"), 100);
FlowPanel buttons = new FlowPanel();
ToggleButton button = new ToggleButton("Hide North", "Show North");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent clickEvent) {
split.setWidgetVisible(north, !((ToggleButton) clickEvent.getSource()).isDown());
}
});
buttons.add(button);
button = new ToggleButton("Hide South", "Show South");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent clickEvent) {
split.setWidgetVisible(south, !((ToggleButton) clickEvent.getSource()).isDown());
}
});
buttons.add(button);
button = new ToggleButton("Hide West", "Show West");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent clickEvent) {
split.setWidgetVisible(west, !((ToggleButton) clickEvent.getSource()).isDown());
}
});
buttons.add(button);
button = new ToggleButton("Hide East", "Show East");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent clickEvent) {
split.setWidgetVisible(east, !((ToggleButton) clickEvent.getSource()).isDown());
}
});
buttons.add(button);
split.add(buttons);
initWidget(split);
}
public String getName() {
return "Split";
}
public Widget getContentWidget() {
return this;
}
public void reset() {
}
//================================================ Helper Methods ==================================================
private static Widget createContent(String text, String color, String borderColor) {
HTML html = new HTML(text);
DOM.setStyleAttribute(html.getElement(), "backgroundColor", color);
DOM.setStyleAttribute(html.getElement(), "border", "5px solid " + borderColor);
html.setSize("100%", "100%");
return html;
}
}