mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
Initial revision
This commit is contained in:
parent
8cf301e757
commit
e6afe6a468
2 changed files with 82 additions and 0 deletions
41
Lib/lib-stdwin/BoxParent.py
Normal file
41
Lib/lib-stdwin/BoxParent.py
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
from TransParent import TransParent
|
||||||
|
|
||||||
|
class BoxParent() = TransParent():
|
||||||
|
#
|
||||||
|
def create(self, (parent, (dh, dv))):
|
||||||
|
self = TransParent.create(self, parent)
|
||||||
|
self.dh = dh
|
||||||
|
self.dv = dv
|
||||||
|
return self
|
||||||
|
#
|
||||||
|
def getminsize(self, (m, (width, height))):
|
||||||
|
width = max(0, width - 2*self.dh)
|
||||||
|
height = max(0, height - 2*self.dv)
|
||||||
|
width, height = self.child.getminsize(m, (width, height))
|
||||||
|
return width + 2*self.dh, height + 2*self.dv
|
||||||
|
#
|
||||||
|
def setbounds(self, bounds):
|
||||||
|
(left, top), (right, bottom) = bounds
|
||||||
|
self.bounds = bounds
|
||||||
|
left = min(right, left + self.dh)
|
||||||
|
top = min(bottom, top + self.dv)
|
||||||
|
right = max(left, right - self.dh)
|
||||||
|
bottom = max(top, bottom - self.dv)
|
||||||
|
self.innerbounds = (left, top), (right, bottom)
|
||||||
|
self.child.setbounds(self.innerbounds)
|
||||||
|
#
|
||||||
|
def getbounds(self):
|
||||||
|
return self.bounds
|
||||||
|
#
|
||||||
|
def draw(self, args):
|
||||||
|
d, area = args
|
||||||
|
(left, top), (right, bottom) = self.bounds
|
||||||
|
left = left + 1
|
||||||
|
top = top + 1
|
||||||
|
right = right - 1
|
||||||
|
bottom = bottom - 1
|
||||||
|
d.box((left, top), (right, bottom))
|
||||||
|
TransParent.draw(self, args) # XXX clip to innerbounds?
|
||||||
|
#
|
||||||
|
# XXX should scroll clip to innerbounds???
|
||||||
|
# XXX currently the only user restricts itself to child's bounds
|
41
Lib/stdwin/BoxParent.py
Executable file
41
Lib/stdwin/BoxParent.py
Executable file
|
@ -0,0 +1,41 @@
|
||||||
|
from TransParent import TransParent
|
||||||
|
|
||||||
|
class BoxParent() = TransParent():
|
||||||
|
#
|
||||||
|
def create(self, (parent, (dh, dv))):
|
||||||
|
self = TransParent.create(self, parent)
|
||||||
|
self.dh = dh
|
||||||
|
self.dv = dv
|
||||||
|
return self
|
||||||
|
#
|
||||||
|
def getminsize(self, (m, (width, height))):
|
||||||
|
width = max(0, width - 2*self.dh)
|
||||||
|
height = max(0, height - 2*self.dv)
|
||||||
|
width, height = self.child.getminsize(m, (width, height))
|
||||||
|
return width + 2*self.dh, height + 2*self.dv
|
||||||
|
#
|
||||||
|
def setbounds(self, bounds):
|
||||||
|
(left, top), (right, bottom) = bounds
|
||||||
|
self.bounds = bounds
|
||||||
|
left = min(right, left + self.dh)
|
||||||
|
top = min(bottom, top + self.dv)
|
||||||
|
right = max(left, right - self.dh)
|
||||||
|
bottom = max(top, bottom - self.dv)
|
||||||
|
self.innerbounds = (left, top), (right, bottom)
|
||||||
|
self.child.setbounds(self.innerbounds)
|
||||||
|
#
|
||||||
|
def getbounds(self):
|
||||||
|
return self.bounds
|
||||||
|
#
|
||||||
|
def draw(self, args):
|
||||||
|
d, area = args
|
||||||
|
(left, top), (right, bottom) = self.bounds
|
||||||
|
left = left + 1
|
||||||
|
top = top + 1
|
||||||
|
right = right - 1
|
||||||
|
bottom = bottom - 1
|
||||||
|
d.box((left, top), (right, bottom))
|
||||||
|
TransParent.draw(self, args) # XXX clip to innerbounds?
|
||||||
|
#
|
||||||
|
# XXX should scroll clip to innerbounds???
|
||||||
|
# XXX currently the only user restricts itself to child's bounds
|
Loading…
Add table
Add a link
Reference in a new issue