/pyjs/tests/test009.py
Python | 58 lines | 36 code | 22 blank | 0 comment | 0 complexity | 4b023389d39c58e4b43632534ddc7ade MD5 | raw file
Possible License(s): LGPL-2.1, Apache-2.0
- import DOM
- class UIObject:
- def getElement(self):
- return self.element
- def setElement(self, element):
- self.element = element
- def setStyleName(self, style):
- DOM.setAttribute(self.element, "className", style)
- class Widget(UIObject):
- def setParent(self, parent):
- self.parent = parent
- class Panel(Widget):
- pass
- class ComplexPanel(Panel):
- def __init__(self):
- self.children = []
-
- def add(self, widget):
- self.children.append(widget)
- widget.setParent(self)
- return True
- class AbsolutePanel(ComplexPanel):
- def __init__(self):
- ComplexPanel.__init__(self)
- self.setElement(DOM.createDiv())
- DOM.setStyleAttribute(self.getElement(), "overflow", "hidden")
-
- def add(self, widget):
- ComplexPanel.add(self, widget)
- DOM.appendChild(self.getElement(), widget.getElement())
- return True
- class RootPanel(AbsolutePanel):
-
- def __init__(self):
- AbsolutePanel.__init__(self)
- element = self.getBodyElement()
- self.setElement(element)
- def getBodyElement(self):
- JS(""" return $doc.body;""")