From 8414a1a0c4adb5c93627046e5e1bcb043abf734e Mon Sep 17 00:00:00 2001 From: Hans Dijkema Date: Sun, 17 Aug 2025 17:40:00 +0200 Subject: [PATCH] ok --- main.rkt | 4 +++ private/web-wire.rkt | 63 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 main.rkt create mode 100644 private/web-wire.rkt diff --git a/main.rkt b/main.rkt new file mode 100644 index 0000000..b35f995 --- /dev/null +++ b/main.rkt @@ -0,0 +1,4 @@ +#lang racket/base + +(require "private/web-wire.rkt") +(provide (all-from-out "private/web-wire.rkt")) diff --git a/private/web-wire.rkt b/private/web-wire.rkt new file mode 100644 index 0000000..4643064 --- /dev/null +++ b/private/web-wire.rkt @@ -0,0 +1,63 @@ +(module web-wire racket/base + + (require racket/system + ) + + (provide ww-start + ww + ww-stop + + ww-new + ww-move + ww-resize + ww-set-title + ww-set-icon + ) + + + (define-struct ww + ( + [win #:auto #:mutable] + [process-handler #:auto #:mutable] + [cb-move #:auto #:mutable] + [cb-resize #:auto #:mutable] + + ) + #:auto-value #f + ) + + (define (ww-start) + (let* ((cwd (current-directory)) + (bin (build-path cwd ".." "bin" "linux" "web-wire")) + (ww (make-ww)) + (ports (process bin))) + (let* ((in (car ports)) + (out (cadr ports)) + (pid (caddr ports)) + (err (cadddr ports)) + ) + (set-ww-process-handler! (thread + (displayln bin) + (let ((ports (process bin))) + + #t)) + + (define (ww-stop) + #t) + + (define (ww-new) + #t) + + (define (ww-move) + #t) + + (define (ww-resize) + #t) + + (define (ww-set-title) + #t) + + (define (ww-set-icon) + #t) + + ); end of module \ No newline at end of file