annotate Mac/Lib/test/ttedit.py @ 5817:48b94de85bf3 legacy-trunk

Extensive changes by AMK.
author Guido van Rossum <guido@python.org>
date Thu, 17 Jul 1997 16:29:42 +0000
parents c5d30a5643be
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3498
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
1 # Test TE module.
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
2 # Draw a window in which the user can type.
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
3 #
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
4 # This test expects Win, Evt and FrameWork (and anything used by those)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
5 # to work.
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
6 #
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
7 # Actually, it is more a test of FrameWork by now....
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
8
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
9 from FrameWork import *
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
10 import Win
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
11 import Qd
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
12 import TE
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
13 import os
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
14
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
15 class TEWindow(Window):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
16 def open(self, name):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
17 r = (40, 40, 400, 300)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
18 w = Win.NewWindow(r, name, 1, 0, -1, 1, 0x55555555)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
19 r2 = (0, 0, 345, 245)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
20 Qd.SetPort(w)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
21 self.ted = TE.TENew(r2, r2)
3511
c5d30a5643be Fixed ttedit to actually work
Jack Jansen <jack.jansen@cwi.nl>
parents: 3498
diff changeset
22 self.ted.TEAutoView(1)
3498
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
23 w.DrawGrowIcon()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
24 self.wid = w
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
25 self.do_postopen()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
26
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
27 def do_idle(self):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
28 self.ted.TEIdle()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
29
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
30 def do_activate(self, onoff, evt):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
31 if onoff:
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
32 self.ted.TEActivate()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
33 else:
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
34 self.ted.TEDeactivate()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
35
3511
c5d30a5643be Fixed ttedit to actually work
Jack Jansen <jack.jansen@cwi.nl>
parents: 3498
diff changeset
36 def do_update(self, wid, event):
c5d30a5643be Fixed ttedit to actually work
Jack Jansen <jack.jansen@cwi.nl>
parents: 3498
diff changeset
37 Qd.EraseRect(wid.GetWindowPort().portRect)
c5d30a5643be Fixed ttedit to actually work
Jack Jansen <jack.jansen@cwi.nl>
parents: 3498
diff changeset
38 self.ted.TEUpdate(wid.GetWindowPort().portRect)
3498
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
39
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
40 def do_contentclick(self, local, modifiers, evt):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
41 shifted = (modifiers & 0x200)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
42 self.ted.TEClick(local, shifted)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
43
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
44 def do_char(self, ch, event):
3511
c5d30a5643be Fixed ttedit to actually work
Jack Jansen <jack.jansen@cwi.nl>
parents: 3498
diff changeset
45 self.ted.TEKey(ord(ch))
3498
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
46
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
47 class TestList(Application):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
48 def __init__(self):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
49 Application.__init__(self)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
50 self.num = 0
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
51 self.listoflists = []
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
52
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
53 def makeusermenus(self):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
54 self.filemenu = m = Menu(self.menubar, "File")
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
55 self.newitem = MenuItem(m, "New window...", "O", self.open)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
56 self.quititem = MenuItem(m, "Quit", "Q", self.quit)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
57
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
58 def open(self, *args):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
59 w = TEWindow(self)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
60 w.open('Window %d'%self.num)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
61 self.num = self.num + 1
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
62 self.listoflists.append(w)
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
63
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
64 def quit(self, *args):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
65 raise self
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
66
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
67 def do_about(self, id, item, window, event):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
68 EasyDialogs.Message("""Test the TextEdit interface.
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
69 Simple window in which you can type""")
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
70
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
71 def do_idle(self, *args):
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
72 for l in self.listoflists:
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
73 l.do_idle()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
74
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
75 def main():
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
76 App = TestList()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
77 App.mainloop()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
78
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
79 if __name__ == '__main__':
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
80 main()
cdea3f27cf7c TextEdit sample code (not yet complete)
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
81