source: titan/mediathek/localhoster/lib/python2.7/idlelib/ZoomHeight.py @ 40114

Last change on this file since 40114 was 40094, checked in by obi, 7 years ago

tithek add yoztube-dl support

File size: 1.3 KB
Line 
1# Sample extension: zoom a window to maximum height
2
3import re
4import sys
5
6from idlelib import macosxSupport
7
8class ZoomHeight:
9
10    menudefs = [
11        ('windows', [
12            ('_Zoom Height', '<<zoom-height>>'),
13         ])
14    ]
15
16    def __init__(self, editwin):
17        self.editwin = editwin
18
19    def zoom_height_event(self, event):
20        top = self.editwin.top
21        zoom_height(top)
22
23def zoom_height(top):
24    geom = top.wm_geometry()
25    m = re.match(r"(\d+)x(\d+)\+(-?\d+)\+(-?\d+)", geom)
26    if not m:
27        top.bell()
28        return
29    width, height, x, y = map(int, m.groups())
30    newheight = top.winfo_screenheight()
31    if sys.platform == 'win32':
32        newy = 0
33        newheight = newheight - 72
34
35    elif macosxSupport.isAquaTk():
36        # The '88' below is a magic number that avoids placing the bottom
37        # of the window below the panel on my machine. I don't know how
38        # to calculate the correct value for this with tkinter.
39        newy = 22
40        newheight = newheight - newy - 88
41
42    else:
43        #newy = 24
44        newy = 0
45        #newheight = newheight - 96
46        newheight = newheight - 88
47    if height >= newheight:
48        newgeom = ""
49    else:
50        newgeom = "%dx%d+%d+%d" % (width, newheight, x, newy)
51    top.wm_geometry(newgeom)
Note: See TracBrowser for help on using the repository browser.