package org.jboss.tools.drools.reddeer.preference; import org.jboss.reddeer.jface.preference.PreferencePage; import org.jboss.reddeer.swt.impl.button.CheckBox; /** * Drools Flow nodes preference page: Drools -> Drools Flow nodes */ public class DroolsFlowNodesPreferencePage extends PreferencePage { public DroolsFlowNodesPreferencePage() { super("Drools", "Drools Flow nodes"); } public void setShowRuleFlowGroup(boolean value) { toggleCheckBox("RuleFlowGroup", value); } public void setShowSplit(boolean value) { toggleCheckBox("Split", value); } public void setShowJoin(boolean value) { toggleCheckBox("Join", value); } public void setShowEventWait(boolean value) { toggleCheckBox("Event Wait", value); } public void setShowSubFlow(boolean value) { toggleCheckBox("SubFlow", value); } public void setShowAction(boolean value) { toggleCheckBox("Action", value); } public void setShowTimer(boolean value) { toggleCheckBox("Timer", value); } public void setShowFault(boolean value) { toggleCheckBox("Fault", value); } public void setShowEvent(boolean value) { toggleCheckBox("Event", value); } public void setShowHumanTask(boolean value) { toggleCheckBox("HumanTask", value); } public void setShowComposite(boolean value) { toggleCheckBox("Composite", value); } public void setShowForEach(boolean value) { toggleCheckBox("ForEach", value); } public void setShowWorkItems(boolean value) { toggleCheckBox("WorkItems", value); } /** * Toggles all check boxes to checked state. */ public void checkAll() { setShowRuleFlowGroup(true); setShowSplit(true); setShowJoin(true); setShowEventWait(true); setShowSubFlow(true); setShowAction(true); setShowTimer(true); setShowFault(true); setShowEvent(true); setShowHumanTask(true); setShowComposite(true); setShowForEach(true); setShowWorkItems(true); } /** * Toggles all check boxes to unchecked state. */ public void uncheckAll() { setShowRuleFlowGroup(false); setShowSplit(false); setShowJoin(false); setShowEventWait(false); setShowSubFlow(false); setShowAction(false); setShowTimer(false); setShowFault(false); setShowEvent(false); setShowHumanTask(false); setShowComposite(false); setShowForEach(false); setShowWorkItems(false); } private void toggleCheckBox(String label, boolean value) { new CheckBox(label).toggle(value); } }