--- /dev/null
+package com.itmill.toolkit.tests.tickets;\r
+\r
+import com.itmill.toolkit.Application;\r
+import com.itmill.toolkit.terminal.ThemeResource;\r
+import com.itmill.toolkit.ui.Button;\r
+import com.itmill.toolkit.ui.Embedded;\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.OrderedLayout;\r
+import com.itmill.toolkit.ui.Panel;\r
+import com.itmill.toolkit.ui.SplitPanel;\r
+import com.itmill.toolkit.ui.Window;\r
+import com.itmill.toolkit.ui.Button.ClickEvent;\r
+import com.itmill.toolkit.ui.Button.ClickListener;\r
+\r
+public class Ticket2048 extends Application {\r
+\r
+ private Embedded embedded;\r
+ private Panel p;\r
+ private SplitPanel splitPanel;\r
+ private GridLayout gridLayout;\r
+ private OrderedLayout orderedLayout;\r
+\r
+ public void init() {\r
+ Window w = new Window(getClass().getSimpleName());\r
+ setMainWindow(w);\r
+ // setTheme("tests-tickets");\r
+ // splitPanel = new SplitPanel(SplitPanel.ORIENTATION_HORIZONTAL);\r
+ // getMainWindow().setLayout(splitPanel);\r
+\r
+ // GridLayout layout = new GridLayout(10, 10);\r
+ // w.setLayout(layout);\r
+ // gridLayout = new GridLayout(1, 1);\r
+ orderedLayout = new OrderedLayout();\r
+\r
+ getMainWindow().setLayout(orderedLayout);\r
+ // getMainWindow().setLayout(new GridLayout(1, 1));\r
+ getMainWindow().setSizeFull();\r
+ getMainWindow().getLayout().setSizeFull();\r
+\r
+ createUI(orderedLayout);\r
+ // createUI(gridLayout);\r
+\r
+ }\r
+\r
+ private void createUI(Layout layout) {\r
+ // Button sw = new Button("Switch", new ClickListener() {\r
+ //\r
+ // public void buttonClick(ClickEvent event) {\r
+ // Layout l = getMainWindow().getLayout();\r
+ // if (l == orderedLayout) {\r
+ // getMainWindow().setLayout(gridLayout);\r
+ // } else {\r
+ // getMainWindow().setLayout(orderedLayout);\r
+ // }\r
+ //\r
+ // }\r
+ // });\r
+ // layout.addComponent(sw);\r
+\r
+ Layout ol = new GridLayout(1, 2);\r
+ p = new Panel("Panel", ol);\r
+ p.setSizeFull();\r
+ Label l = new Label("Spacer");\r
+ l.setHeight("400px");\r
+ p.addComponent(l);\r
+\r
+ embedded = new Embedded(null, new ThemeResource(\r
+ "icons/64/folder-add.png"));\r
+ layout.addComponent(embedded);\r
+ Button b = new Button(\r
+ "Replace image with new embedded component (flashes)",\r
+ new ClickListener() {\r
+\r
+ public void buttonClick(ClickEvent event) {\r
+ Embedded newEmbedded = new Embedded(null,\r
+ new ThemeResource("icons/64/folder-add.png"));\r
+ getMainWindow().getLayout().replaceComponent(embedded,\r
+ newEmbedded);\r
+ embedded = newEmbedded;\r
+\r
+ }\r
+\r
+ });\r
+ p.addComponent(b);\r
+\r
+ b = new Button("Change image source (is fine)", new ClickListener() {\r
+\r
+ public void buttonClick(ClickEvent event) {\r
+ String img = "folder-add";\r
+ if (((ThemeResource) embedded.getSource()).getResourceId()\r
+ .contains("folder-add")) {\r
+ img = "folder-delete";\r
+ }\r
+ embedded\r
+ .setSource(new ThemeResource("icons/64/" + img + ".png"));\r
+\r
+ }\r
+\r
+ });\r
+\r
+ p.addComponent(b);\r
+ layout.addComponent(p);\r
+ }\r
+}\r