;;;; ide.asd (defsystem #:ide   :description "sigh"   :author ""   :license  ""   :version "0.0.0"   :serial t   :depends-on (:cl :gtk4)   :components ((:file "test2"))) ;;;; ---------- ; test2.lisp: (ql:quickload "cl-gtk4") (defpackage :ide (:use :cl :gtk4)) (in-package :ide) (defparameter *txt1* "hi") (define-application (:name this-app :id "what.is.this") (define-main-window (window (make-application-window :application *application*)) (setf (window-title window) "WIN") (let ((vbox (make-box :orientation +orientation-vertical+ :spacing 4)) (label-1 (make-label :str "button 1")) (label-2 (make-label :str "button 2")) (entry (make-entry))) (box-append vbox label-1) (box-append vbox label-2) (setf (entry-buffer-text (entry-buffer entry)) *txt1*) (connect entry "changed" (lambda (entry) (let ((text (entry-buffer-text (entry-buffer entry)))) (setq *txt1* text)))) (box-append vbox entry) (setf (window-child window) vbox)) (unless (widget-visible-p window) (window-present window))))