annotate Lib/stdwin/dirwin.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 7259e96a04a9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
1 # Module 'dirwin'
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
2
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
3 # Directory windows, a subclass of listwin
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
4
776
7259e96a04a9 posix -> os
Guido van Rossum <guido@python.org>
parents: 559
diff changeset
5 import os
5
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
6 import gwin
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
7 import listwin
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
8 import anywin
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
9 import dircache
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
10
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
11 def action(w, string, i, detail):
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
12 (h, v), clicks, button, mask = detail
559
683edb0c4463 New == syntax
Guido van Rossum <guido@python.org>
parents: 363
diff changeset
13 if clicks == 2:
776
7259e96a04a9 posix -> os
Guido van Rossum <guido@python.org>
parents: 559
diff changeset
14 name = os.path.join(w.name, string)
5
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
15 try:
19
71ac0e37236a Set 'parent' field of new created subwindows so wdiff can implement
Guido van Rossum <guido@python.org>
parents: 5
diff changeset
16 w2 = anywin.open(name)
71ac0e37236a Set 'parent' field of new created subwindows so wdiff can implement
Guido van Rossum <guido@python.org>
parents: 5
diff changeset
17 w2.parent = w
776
7259e96a04a9 posix -> os
Guido van Rossum <guido@python.org>
parents: 559
diff changeset
18 except os.error, why:
5
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
19 stdwin.message('Can\'t open ' + name + ': ' + why[1])
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
20
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
21 def open(name):
776
7259e96a04a9 posix -> os
Guido van Rossum <guido@python.org>
parents: 559
diff changeset
22 name = os.path.join(name, '')
5
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
23 list = dircache.opendir(name)[:]
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
24 list.sort()
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
25 dircache.annotate(name, list)
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
26 w = listwin.open(name, list)
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
27 w.name = name
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
28 w.action = action
5570dbb1ce55 Initial revision
Guido van Rossum <guido@python.org>
parents:
diff changeset
29 return w