package org.aplikator.client.local.widgets;
import org.gwtbootstrap3.client.ui.Column;
import org.gwtbootstrap3.client.ui.FormLabel;
import org.gwtbootstrap3.client.ui.Row;
import org.gwtbootstrap3.client.ui.constants.ColumnSize;
import org.gwtbootstrap3.client.ui.html.Div;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.Widget;
public class PaneWidget extends Composite {
protected Div panel;
protected FormLabel label;
protected Div labelHolder;
public PaneWidget(String label, boolean framed, boolean horizontal, int size) {
if (label != null && !"".equals(label) && !"null".equals(label)) {
this.label = new FormLabel();
this.label.setText(label);
this.label.addStyleName("fieldLabel");
if (horizontal) {
labelHolder = new Row();
} else {
labelHolder = new Column(LayoutUtils.size(size));
}
labelHolder.addStyleName("app-clean-mg-left");
labelHolder.addStyleName("app-clean-mg-right");
labelHolder.add(this.label);
}
if (horizontal) {
panel = new Row();
} else {
if (labelHolder == null) {
panel = new Column(LayoutUtils.size(size));
} else {
panel = new Column(ColumnSize.XS_12);
}
}
if (horizontal && size > 0 && size < 12) {
Column sizerColumn = new Column(LayoutUtils.size(size));
sizerColumn.add(panel);
if (labelHolder == null) {
Row wrapper = new Row();
wrapper.add(sizerColumn);
initWidget(wrapper);
} else {
labelHolder.add(sizerColumn);
initWidget(labelHolder);
}
} else {
if (labelHolder == null) {
initWidget(panel);
} else {
labelHolder.add(panel);
initWidget(labelHolder);
}
}
if (framed) {
panel.addStyleName("panelBorder");
}
}
public void add(Widget widget) {
panel.add(widget);
}
}