You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

TestForChildComponentRendering.java 2.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. package com.itmill.toolkit.tests;
  2. import java.util.ArrayList;
  3. import java.util.Iterator;
  4. import com.itmill.toolkit.terminal.ExternalResource;
  5. import com.itmill.toolkit.ui.Button;
  6. import com.itmill.toolkit.ui.Component;
  7. import com.itmill.toolkit.ui.CustomComponent;
  8. import com.itmill.toolkit.ui.Label;
  9. import com.itmill.toolkit.ui.Link;
  10. import com.itmill.toolkit.ui.OrderedLayout;
  11. import com.itmill.toolkit.ui.Select;
  12. /**
  13. *
  14. * This Component contains some simple test to see that component updates its
  15. * contents propertly.
  16. *
  17. * @author IT Mill Ltd.
  18. */
  19. public class TestForChildComponentRendering extends CustomComponent {
  20. private OrderedLayout main;
  21. public TestForChildComponentRendering() {
  22. main = new OrderedLayout();
  23. setCompositionRoot(main);
  24. createNewView();
  25. }
  26. public void createNewView() {
  27. main.removeAllComponents();
  28. main.addComponent(new Label("SDFGFHFHGJGFDSDSSSGFDD"));
  29. Link l = new Link();
  30. l.setCaption("Siirry ITMILLIIN");
  31. l.setResource(new ExternalResource("http://www.itmill.com/"));
  32. l.setTargetHeight(200);
  33. l.setTargetWidth(500);
  34. l.setTargetBorder(Link.TARGET_BORDER_MINIMAL);
  35. main.addComponent(l);
  36. Select se = new Select();
  37. se.setCaption("VALITSET TÄSTÄ");
  38. se.addItem("valinta1");
  39. se.addItem("Valinta 2");
  40. Button b = new Button("refresh view", this, "createNewView");
  41. main.addComponent(b);
  42. b = new Button("reorder view", this, "randomReorder");
  43. main.addComponent(b);
  44. b = new Button("remove randomly one component", this,
  45. "removeRandomComponent");
  46. main.addComponent(b);
  47. }
  48. public void randomReorder() {
  49. Iterator it = main.getComponentIterator();
  50. ArrayList components = new ArrayList();
  51. while (it.hasNext())
  52. components.add(it.next());
  53. OrderedLayout v = main;
  54. v.removeAllComponents();
  55. for (int i = components.size(); i > 0; i--) {
  56. int index = (int) (Math.random() * i);
  57. v.addComponent((Component) components.get(index));
  58. components.remove(index);
  59. }
  60. }
  61. public void removeRandomComponent() {
  62. Iterator it = main.getComponentIterator();
  63. ArrayList components = new ArrayList();
  64. while (it.hasNext())
  65. components.add(it.next());
  66. int size = components.size();
  67. int index = (int) (Math.random() * size);
  68. main.removeComponent((Component) components.get(index));
  69. }
  70. }