diff options
| author | Skip Montanaro <[email protected]> | 2021-02-16 20:14:16 -0600 |
|---|---|---|
| committer | Skip Montanaro <[email protected]> | 2021-02-16 20:14:16 -0600 |
| commit | c2587c76f1b416cdbecb979e54941933246bf856 (patch) | |
| tree | bb61ee9128075ce22af4eafa232f13c2e5a07896 /lib/HVSplit.py | |
| parent | d90761a005b24018ae237bf551515772a1de656f (diff) | |
| download | python-0.9.1-patched-QoL-c2587c76f1b416cdbecb979e54941933246bf856.tar.xz python-0.9.1-patched-QoL-c2587c76f1b416cdbecb979e54941933246bf856.zip | |
starting over
Diffstat (limited to 'lib/HVSplit.py')
| -rw-r--r-- | lib/HVSplit.py | 84 |
1 files changed, 42 insertions, 42 deletions
diff --git a/lib/HVSplit.py b/lib/HVSplit.py index d52af8e..36192a7 100644 --- a/lib/HVSplit.py +++ b/lib/HVSplit.py @@ -8,49 +8,49 @@ from Split import Split class HVSplit() = Split(): - # - def create(self, (parent, hv)): - # hv is 0 or 1 for HSplit or VSplit - self = Split.create(self, parent) - self.hv = hv - return self - # - def minsize(self, m): - hv, vh = self.hv, 1 - self.hv - size = [0, 0] - for c in self.children: - csize = c.minsize(m) - if csize[vh] > size[vh]: size[vh] = csize[vh] - size[hv] = size[hv] + csize[hv] - return size[0], size[1] - # - def getbounds(self): - return self.bounds - # - def setbounds(self, bounds): - self.bounds = bounds - hv, vh = self.hv, 1 - self.hv - mf = self.parent.beginmeasuring - size = self.minsize(mf()) - # XXX not yet used! Later for stretching - maxsize_hv = bounds[1][hv] - bounds[0][hv] - origin = [self.bounds[0][0], self.bounds[0][1]] - for c in self.children: - size = c.minsize(mf()) - corner = [0, 0] - corner[vh] = bounds[1][vh] - corner[hv] = origin[hv] + size[hv] - c.setbounds((origin[0], origin[1]), \ - (corner[0], corner[1])) - origin[hv] = corner[hv] - # XXX stretch - # XXX too-small - # + # + def create(self, (parent, hv)): + # hv is 0 or 1 for HSplit or VSplit + self = Split.create(self, parent) + self.hv = hv + return self + # + def minsize(self, m): + hv, vh = self.hv, 1 - self.hv + size = [0, 0] + for c in self.children: + csize = c.minsize(m) + if csize[vh] > size[vh]: size[vh] = csize[vh] + size[hv] = size[hv] + csize[hv] + return size[0], size[1] + # + def getbounds(self): + return self.bounds + # + def setbounds(self, bounds): + self.bounds = bounds + hv, vh = self.hv, 1 - self.hv + mf = self.parent.beginmeasuring + size = self.minsize(mf()) + # XXX not yet used! Later for stretching + maxsize_hv = bounds[1][hv] - bounds[0][hv] + origin = [self.bounds[0][0], self.bounds[0][1]] + for c in self.children: + size = c.minsize(mf()) + corner = [0, 0] + corner[vh] = bounds[1][vh] + corner[hv] = origin[hv] + size[hv] + c.setbounds((origin[0], origin[1]), \ + (corner[0], corner[1])) + origin[hv] = corner[hv] + # XXX stretch + # XXX too-small + # class HSplit() = HVSplit(): - def create(self, parent): - return HVSplit.create(self, (parent, 0)) + def create(self, parent): + return HVSplit.create(self, (parent, 0)) class VSplit() = HVSplit(): - def create(self, parent): - return HVSplit.create(self, (parent, 1)) + def create(self, parent): + return HVSplit.create(self, (parent, 1)) |
