package org.jblooming.waf.html.container;
import org.jblooming.waf.constants.Commands;
import org.jblooming.waf.html.button.ButtonSupport;
import org.jblooming.waf.html.core.JspHelper;
import org.jblooming.waf.html.display.Img;
import org.jblooming.waf.view.PageState;
import javax.servlet.ServletException;
import javax.servlet.jsp.PageContext;
import java.io.IOException;
public class Tab extends JspHelper {
boolean openTabCalled;
boolean closeTabCalled;
public String domId = "d" + hashCode();
public String id;
public String caption;
public boolean focused = false;
// public PageSeed variationsFromForm = new PageSeed();
public boolean enabled = true;
public TabSet tabSet;
public final static String START = "START";
public final static String END = "END";
public ButtonSupport button = null;
public String additionalScript;
//added icon on tab
//todo public enum ImgPosition { LEFT, RIGHT }
//public ImgPosition imgPosition=ImgPosition.LEFT;
public Img imgTab ;
// public boolean doSubmit=false;
/**
* @deprecated give an id
*/
public Tab(String caption) {
this.caption=caption;
}
public Tab(String id, String caption) {
this.domId = id;
this.id = id;
this.caption=caption;
}
public Tab(String id,ButtonSupport bs) {
this.domId = id;
this.id = id;
this.button=bs;
this.caption = bs.label;
}
public void start(PageContext pageContext) {
pageContext.getRequest().setAttribute(Commands.COMMAND, START);
toHtml(pageContext);
openTabCalled = true;
}
public void end(PageContext pageContext) {
pageContext.getRequest().setAttribute(Commands.COMMAND, END);
toHtml(pageContext);
closeTabCalled = true;
}
public void focusedIfNoneFocused(TabSet ts, PageState pageState) {
if (pageState.getEntry(ts.id).stringValueNullIfEmpty()==null)
this.focused = true;
}
}