blob: 0b3b5dbf7beec1ec383b573575fe19f638d84298 [file] [log] [blame]
Guido van Rossumc6360141990-10-13 19:23:40 +00001# Module 'dirwin'
2
3# Directory windows, a subclass of listwin
4
5import gwin
6import listwin
7import anywin
8import path
9import dircache
10
11def action(w, string, i, detail):
12 (h, v), clicks, button, mask = detail
13 if clicks = 2:
14 name = path.cat(w.name, string)
15 try:
Guido van Rossum2dbf39c1990-10-21 16:15:58 +000016 w2 = anywin.open(name)
17 w2.parent = w
Guido van Rossumc6360141990-10-13 19:23:40 +000018 except posix.error, why:
19 stdwin.message('Can\'t open ' + name + ': ' + why[1])
20
21def open(name):
22 name = path.cat(name, '')
23 list = dircache.opendir(name)[:]
24 list.sort()
25 dircache.annotate(name, list)
26 w = listwin.open(name, list)
27 w.name = name
28 w.action = action
29 return w