summaryrefslogtreecommitdiff
path: root/module/dividers.m
diff options
context:
space:
mode:
Diffstat (limited to 'module/dividers.m')
-rw-r--r--module/dividers.m33
1 files changed, 33 insertions, 0 deletions
diff --git a/module/dividers.m b/module/dividers.m
new file mode 100644
index 00000000..f14a6405
--- /dev/null
+++ b/module/dividers.m
@@ -0,0 +1,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;
+ };
+
+};