Files
racket-webview/private/wv-dialog.rkt
2026-04-01 16:23:56 +02:00

54 lines
1.3 KiB
Racket

#lang racket/base
(require racket/class
"wv-window.rkt"
)
(provide wv-dialog%
)
(define (default-w) 400)
(define (default-h) 400)
(define wv-dialog%
(class wv-window%
(inherit-field parent settings wv-context html-path x y width height)
(super-new)
(define/override (init-size)
(displayln "init-size")
(let ((px (get-field x parent))
(py (get-field y parent))
(pw (get-field width parent))
(ph (get-field height parent))
)
(displayln px)
(displayln py)
(displayln pw)
(displayln ph)
(let ((dw (send settings get 'width (if (eq? width #f) (default-w) width)))
(dh (send settings get 'height (if (eq? height #f) (default-h) height)))
)
(displayln dw)
(displayln dh)
(let ((xx (/ (- pw dw) 2))
(yy (/ (- ph dh) 2)))
(let ((x (inexact->exact (round (exact->inexact (+ px xx)))))
(y (inexact->exact (round (exact->inexact (+ py yy)))))
)
(displayln (format "move ~a ~a" x y))
(send this move x y)
(displayln (format "resize ~a ~a" x y))
(send this resize dw dh)
)
)
)
)
)
)
)