]> source.dussan.org Git - vaadin-framework.git/commitdiff
Test that caching widgets works.
authorJani Laakso <jani.laakso@itmill.com>
Mon, 22 Oct 2007 14:31:17 +0000 (14:31 +0000)
committerJani Laakso <jani.laakso@itmill.com>
Mon, 22 Oct 2007 14:31:17 +0000 (14:31 +0000)
Inspect transfered data from server to
client and see how widgets are re-used
after each panel is once shown in GUI then"
their contents are not resend.

svn changeset:2579/svn branch:trunk

src/com/itmill/toolkit/tests/TestSetVisibleAndCaching.java [new file with mode: 0644]

diff --git a/src/com/itmill/toolkit/tests/TestSetVisibleAndCaching.java b/src/com/itmill/toolkit/tests/TestSetVisibleAndCaching.java
new file mode 100644 (file)
index 0000000..7fd6b73
--- /dev/null
@@ -0,0 +1,71 @@
+package com.itmill.toolkit.tests;
+
+import com.itmill.toolkit.ui.*;
+import com.itmill.toolkit.ui.Button.ClickEvent;
+import com.itmill.toolkit.ui.Button.ClickListener;
+
+public class TestSetVisibleAndCaching extends com.itmill.toolkit.Application {
+
+       Panel panelA = new Panel("Panel A");
+       Panel panelB = new Panel("Panel B");
+       Panel panelC = new Panel("Panel C");
+
+       Button buttonNextPanel = new Button("Show next panel");
+
+       int selectedPanel = 0;
+
+       public void init() {
+               Window mainWindow = new Window("TestSetVisibleAndCaching");
+               setMainWindow(mainWindow);
+
+               panelA.addComponent(new Label(
+                               "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"));
+               panelB.addComponent(new Label(
+                               "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"));
+               panelC.addComponent(new Label(
+                               "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"));
+
+               mainWindow.addComponent(new Label(
+                               "Inspect transfered data from server to "
+                                               + "client and see how widgets are re-used,"
+                                               + " after each panel is once shown in GUI then"
+                                               + " their contents are not resend."));
+               mainWindow.addComponent(buttonNextPanel);
+               mainWindow.addComponent(panelA);
+               mainWindow.addComponent(panelB);
+               mainWindow.addComponent(panelC);
+
+               selectPanel(selectedPanel);
+
+               buttonNextPanel.addListener(new ClickListener() {
+                       public void buttonClick(ClickEvent event) {
+                               selectedPanel++;
+                               if (selectedPanel > 2)
+                                       selectedPanel = 0;
+                               selectPanel(selectedPanel);
+                       }
+               });
+
+       }
+
+       private void selectPanel(int selectedPanel) {
+               System.err.println("Selecting panel " + selectedPanel);
+               switch (selectedPanel) {
+               case 0:
+                       panelA.setVisible(true);
+                       panelB.setVisible(false);
+                       panelC.setVisible(false);
+                       break;
+               case 1:
+                       panelA.setVisible(false);
+                       panelB.setVisible(true);
+                       panelC.setVisible(false);
+                       break;
+               case 2:
+                       panelA.setVisible(false);
+                       panelB.setVisible(false);
+                       panelC.setVisible(true);
+                       break;
+               }
+       }
+}