/pyjs/tests/test008.py

http://pyjamas.googlecode.com/ · Python · 46 lines · 29 code · 17 blank · 0 comment · 0 complexity · 7f34f92cbdd8179a708feb26aa2f7e7e MD5 · raw file

  1. import DOM
  2. class UIObject:
  3. def getElement(self):
  4. return self.element
  5. def setElement(self, element):
  6. self.element = element
  7. def setStyleName(self, style):
  8. DOM.setAttribute(self.element, "className", style)
  9. class Widget(UIObject):
  10. def setParent(self, parent):
  11. self.parent = parent
  12. class Panel(Widget):
  13. pass
  14. class ComplexPanel(Panel):
  15. def __init__(self):
  16. self.children = []
  17. def add(self, widget):
  18. self.children.append(widget)
  19. widget.setParent(self)
  20. return True
  21. class AbsolutePanel(ComplexPanel):
  22. def __init__(self):
  23. ComplexPanel.__init__(self)
  24. self.setElement(DOM.createDiv())
  25. DOM.setStyleAttribute(self.getElement(), "overflow", "hidden")
  26. def add(self, widget):
  27. ComplexPanel.add(self, widget)
  28. DOM.appendChild(self.getElement(), widget.getElement())
  29. return True