Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

SplitPanelSplitterWidth.java 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.vaadin.tests.components.splitpanel;
  2. import com.vaadin.tests.components.TestBase;
  3. import com.vaadin.ui.Button;
  4. import com.vaadin.ui.Button.ClickEvent;
  5. import com.vaadin.ui.HorizontalSplitPanel;
  6. import com.vaadin.ui.Notification;
  7. import com.vaadin.ui.Panel;
  8. import com.vaadin.ui.VerticalLayout;
  9. import com.vaadin.ui.VerticalSplitPanel;
  10. public class SplitPanelSplitterWidth extends TestBase {
  11. @Override
  12. protected Integer getTicketNumber() {
  13. return 2510;
  14. }
  15. @Override
  16. protected String getDescription() {
  17. return "SplitPanel splitter is effectively a 1px wide target after unlocking previously locked splitter.";
  18. }
  19. @Override
  20. protected void setup() {
  21. final HorizontalSplitPanel split = new HorizontalSplitPanel();
  22. split.setWidth("200px");
  23. split.setHeight("200px");
  24. split.setLocked(true);
  25. Panel p = buildPanel("Left");
  26. p.setSizeFull();
  27. split.addComponent(p);
  28. p = buildPanel("Right");
  29. p.setSizeFull();
  30. split.addComponent(p);
  31. final VerticalSplitPanel split2 = new VerticalSplitPanel();
  32. split2.setWidth("200px");
  33. split2.setHeight("200px");
  34. split2.setLocked(true);
  35. p = buildPanel("Top");
  36. p.setSizeFull();
  37. split2.addComponent(p);
  38. p = buildPanel("Bottom");
  39. p.setSizeFull();
  40. split2.addComponent(p);
  41. getLayout()
  42. .addComponent(new Button("Unlock", new Button.ClickListener() {
  43. @Override
  44. public void buttonClick(ClickEvent event) {
  45. split.setLocked(false);
  46. split2.setLocked(false);
  47. getMainWindow().showNotification(
  48. "Try moving split. Then reload page.",
  49. Notification.TYPE_WARNING_MESSAGE);
  50. getLayout().removeComponent(event.getButton());
  51. }
  52. }));
  53. getLayout().addComponent(split);
  54. getLayout().addComponent(split2);
  55. }
  56. private Panel buildPanel(String caption) {
  57. VerticalLayout pl = new VerticalLayout();
  58. pl.setMargin(true);
  59. return new Panel(caption, pl);
  60. }
  61. }