public Widget createWidget() {
form = new ModclusterForm(presenter);
CheckBoxItem advertise = new CheckBoxItem("advertise", "Advertise");
TextBoxItem advertiseSocket = new TextBoxItem("advertiseSocket", "Advertise Socket");
TextBoxItem advertiseKey= new TextBoxItem("advertiseKey", "Advertise Key", false);
TextBoxItem balancer = new TextBoxItem("balancer", "Balancer", false);
TextBoxItem loadBalancingGroup = new TextBoxItem("loadBalancingGroup", "Load Balancing Group", false);
form.setFields(loadBalancingGroup, balancer, advertiseSocket, advertiseKey, advertise);
// ---
contextForm = new ModclusterForm(presenter);
TextAreaItem excludedContexts = new TextAreaItem("excludedContexts", "Excluded Contexts");
excludedContexts.setRequired(false);
CheckBoxItem autoEnableContexts = new CheckBoxItem("autoEnableContexts", "Auto Enable Contexts");
contextForm.setFields(autoEnableContexts, excludedContexts);
// ---
proxyForm = new ModclusterForm(presenter);
TextAreaItem proxyList = new TextAreaItem("proxyList", "Proxy List");
proxyList.setRequired(false);
TextBoxItem proxyUrl = new TextBoxItem("proxyUrl", "Proxy Url");
proxyForm.setFields(proxyUrl, proxyList);
//---
sessionForm = new ModclusterForm(presenter);
CheckBoxItem stickySession = new CheckBoxItem("stickySession", "Sticky Session");
CheckBoxItem stickySessionForce = new CheckBoxItem("stickySessionForce", "Sticky Session Force");
CheckBoxItem stickySessionRemove = new CheckBoxItem("stickySessionRemove", "Sticky Session Remove");
sessionForm.setFields(stickySession, stickySessionForce, stickySessionRemove);
// --
networkingForm = new ModclusterForm(presenter);
NumberBoxItem nodeTimeout = new NumberBoxItem("nodeTimeout", "Node Timeout");
NumberBoxItem socketTimeout = new NumberBoxItem("socketTimeout", "Socket Timeout");
NumberBoxItem stopContextTimeout = new NumberBoxItem("stopContextTimeout", "Stop Context Timeout");
NumberBoxItem maxAttemps = new NumberBoxItem("maxAttemps", "Max Attemps");
CheckBoxItem flushPackets = new CheckBoxItem("flushPackets", "Flush Packets");
NumberBoxItem flushWait = new NumberBoxItem("flushWait", "Flush Wait");
NumberBoxItem ping = new NumberBoxItem("ping", "Ping");
NumberBoxItem workerTimeout = new NumberBoxItem("workerTimeout", "Worker Timeout");
NumberBoxItem ttl = new NumberBoxItem("ttl", "TTL");