package com.itmill.toolkit.tests.tickets;\r
\r
+import java.util.Date;\r
+import java.util.Set;\r
+\r
import com.itmill.toolkit.Application;\r
+import com.itmill.toolkit.data.Property.ValueChangeEvent;\r
import com.itmill.toolkit.ui.Button;\r
import com.itmill.toolkit.ui.DateField;\r
import com.itmill.toolkit.ui.Form;\r
import com.itmill.toolkit.ui.GridLayout;\r
import com.itmill.toolkit.ui.Label;\r
+import com.itmill.toolkit.ui.Layout;\r
+import com.itmill.toolkit.ui.OptionGroup;\r
import com.itmill.toolkit.ui.OrderedLayout;\r
import com.itmill.toolkit.ui.Panel;\r
import com.itmill.toolkit.ui.TextField;\r
GridLayout layout = new GridLayout(10, 10);\r
w.setLayout(layout);\r
createUI(layout);\r
+\r
+ createMultiLevelHierarchy();\r
+ }\r
+\r
+ private void createMultiLevelHierarchy() {\r
+\r
+ Layout lo = new OrderedLayout();\r
+\r
+ final OptionGroup disabled = new OptionGroup("Levels to disable");\r
+ disabled.addItem("L1");\r
+ disabled.addItem("L2");\r
+ disabled.addItem("L3");\r
+ disabled.setMultiSelect(true);\r
+ disabled.setImmediate(true);\r
+ lo.addComponent(disabled);\r
+\r
+ final Label lastClick = new Label("-");\r
+ lastClick.setCaption("Last Click:");\r
+ lo.addComponent(lastClick);\r
+\r
+ ClickListener clickListener = new Button.ClickListener() {\r
+ public void buttonClick(ClickEvent event) {\r
+ lastClick.setValue(event.getButton().getCaption() + " : "\r
+ + new Date());\r
+ }\r
+ };\r
+\r
+ final Panel[] p = new Panel[4];\r
+\r
+ p[1] = new Panel("Level1");\r
+ lo.addComponent(p[1]);\r
+ Button b1 = new Button("Inside level1");\r
+ b1.addListener(clickListener);\r
+ p[1].addComponent(b1);\r
+ Button b1d = new Button("Disabked Inside level1");\r
+ b1d.setEnabled(false);\r
+ b1d.addListener(clickListener);\r
+ p[1].addComponent(b1d);\r
+\r
+ p[2] = new Panel("Level2");\r
+ p[1].addComponent(p[2]);\r
+ Button b2 = new Button("Inside level2");\r
+ b2.addListener(clickListener);\r
+ p[2].addComponent(b2);\r
+ Button b2d = new Button("Disabled Inside level2");\r
+ b2d.setEnabled(false);\r
+ b2d.addListener(clickListener);\r
+ p[2].addComponent(b2d);\r
+\r
+ p[3] = new Panel("Level3");\r
+ p[2].addComponent(p[3]);\r
+ Button b3 = new Button("Inside level3");\r
+ b3.addListener(clickListener);\r
+ p[3].addComponent(b3);\r
+ Button b3d = new Button("Disabled Inside level3");\r
+ b3d.setEnabled(false);\r
+ b3d.addListener(clickListener);\r
+ p[3].addComponent(b3d);\r
+\r
+ disabled.addListener(new OptionGroup.ValueChangeListener() {\r
+ public void valueChange(ValueChangeEvent event) {\r
+ Set disabledIds = (Set) disabled.getValue();\r
+ for (int i = 1; i < 4; i++) {\r
+ boolean ena = !disabledIds.contains("L" + i);\r
+ if (p[i].isEnabled() != ena) {\r
+ p[i].setEnabled(ena);\r
+ }\r
+ }\r
+ }\r
+ });\r
+\r
+ getMainWindow().addComponent(lo);\r
}\r
\r
private void createUI(GridLayout layout) {\r