summaryrefslogtreecommitdiff
path: root/lib/sh/win
diff options
context:
space:
mode:
authorCharles.Forsyth <devnull@localhost>2006-12-22 20:52:35 +0000
committerCharles.Forsyth <devnull@localhost>2006-12-22 20:52:35 +0000
commit46439007cf417cbd9ac8049bb4122c890097a0fa (patch)
tree6fdb25e5f3a2b6d5657eb23b35774b631d4d97e4 /lib/sh/win
parent37da2899f40661e3e9631e497da8dc59b971cbd0 (diff)
20060303-partial
Diffstat (limited to 'lib/sh/win')
-rw-r--r--lib/sh/win42
1 files changed, 42 insertions, 0 deletions
diff --git a/lib/sh/win b/lib/sh/win
new file mode 100644
index 00000000..fa3f69eb
--- /dev/null
+++ b/lib/sh/win
@@ -0,0 +1,42 @@
+load tk std
+
+fn x {
+ or {tk $wid $*} {
+ echo error on tk cmd $"*':' $status >[1=2]
+ }
+}
+
+subfn x {
+ result = ${tk $wid $*}
+ if {~ $result '!*'} {
+ echo error on tk cmd $"*':' $result >[1=2]
+ }
+}
+
+fn tkwin {
+ if {! ~ $#* 2} {
+ echo usage: tkwin name {command} >[1=2]
+ raise usage
+ }
+ wid := ${tk window $1}
+ while {} {
+ tk winctl $wid ${recv $wid}
+ } &
+ $2
+}
+
+# more for interactive use
+fn tkmkwin {
+ if {! ~ $#* 1} {
+ echo usage: tkmkwin name >[1=2]
+ raise usage
+ }
+ wid = ${tk window $1}
+ while {} {
+ tk winctl $wid ${recv $wid}
+ } &
+}
+
+fn onscreen {
+ tk onscreen $wid $1
+}