tuikit/layouts/offset.py
changeset 114 26c02bd94bd9
child 115 b4ff7392003a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tuikit/layouts/offset.py	Sun Feb 15 12:48:23 2015 +0100
@@ -0,0 +1,21 @@
+from .layout import Layout
+from tuikit.core.coords import Point
+
+
+class OffsetLayout(Layout):
+
+    """Offsets widget position. Used by Viewport and ScrollView."""
+
+    def __init__(self):
+        Layout.__init__(self)
+        self._offset = Point()
+
+    @property
+    def offset(self):
+        """Offset of child widgets."""
+        return self._offset
+
+    def update(self):
+        for widget in self._managed_widgets:
+            widget.resize(*widget.sizereq)
+            widget.pos.update(*(widget.posreq + self.offset))