blob: f14a6405f7c3f5dd32eebc77db3e50a56a768f42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
Dividers: module {
init: fn();
Divider: adt {
new: fn(win: ref Tk->Toplevel, w: string, wl: list of string, dir: int): (ref Divider, chan of string);
event: fn(d: self ref Divider, e: string);
# private from here.
win: ref Tk->Toplevel;
w: string;
state: ref DState;
dir: int; # NS or EW
widgets: array of ref DWidget;
canvsize: Draw->Point;
};
EW, NS: con iota;
PATH: con "/dis/lib/dividers.dis";
# private from here
DWidget: adt {
w: string;
r: Draw->Rect;
size: Draw->Point;
};
DState: adt {
dragdiv: int;
dy: int;
maxy, miny: int;
};
};
|