commit af77597717d80f7bc40fdce831f4f9a31913b0b4
parent 50ccef3af36b6d929a256263e3332b3f7dd4b50f
Author: Yuval Langer <yuval.langer@gmail.com>
Date: Sun, 7 Jul 2024 08:35:28 +0300
Add comments and reading resources in the TODO file.
Diffstat:
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/TODO.org b/TODO.org
@@ -16,3 +16,9 @@ From <ircs://irc.libera.chat/guile>:
- Some ideas? (I haven't read yet. Don't even know if it's something we should or shouldn't do.):
https://medium.com/@roy-chng/make-python-tkinter-applications-look-modern-eb9d25a8e7bb
+
+* TODO Reading resources:
+
+https://www.tcl.tk/doc/
+https://www.peter-herth.de/ltk/ltkdoc/
+https://tkdocs.com/tutorial/intro.html
diff --git a/pstk.scm b/pstk.scm
@@ -253,9 +253,9 @@
;;; Start weird letrec definitions:
(define nl (string #\newline))
-(define wish-input #f)
-(define wish-output #f)
-(define tk-is-running #f)
+(define wish-input #f) ;; Pipe into the wish process's input. A pipe to which you write.
+(define wish-output #f) ;; Pipe out from the wish process's output. A pipe from which you read.
+(define tk-is-running #f) ;; Used to exit the event loop.
(define tk-ids+widgets '())
(define tk-widgets '())
(define commands-invoked-by-tk '())
@@ -433,6 +433,10 @@
(lambda (obj) (not (memv obj false-values)))))
(define (widget? x)
+ ;; The AND here makes sure we return either #f or #t, nothing else.
+ ;; Either the application of MEMQ evalutates to #f thereby
+ ;; shortcircuiting the AND, or it evaluates to anything other than
+ ;; #f, and the AND evaluates #t, which is then returned.
(and (memq x tk-widgets) #t))
(define (call-by-key key resultvar . args)