Чуть подновил (on-click), но есть пара моментов — виджеты вываливаются в отдельные окна :) плюс такое вот поймал на не-hello:
<unnamed port>: While evaluating arguments to cadr in expression (cadr arg s): <unnamed port>: Unbound variable: arg
Что бегает:
(document:surround "/std/base") (hbox (layout-policy 100 80) (document:id form-text (textbox "(document:surround \"/std/base\")" (layout-policy 50 100))) (groupbox "Form" (layout-policy 50 100) (document:id page (document:subdocument "/default-form")))) (hbox (button "Update-Form" (when clicked (catch #t (lambda() (define-operation add-memory) (with-atlas (add-memory (from-context 'atlas) '/my-form (form-text text)) (document:replace-in-widget page "/my-form"))) (lambda(key . args) (document:replace-in-widget page "/error-form" 'reason (cadr arg s)))))) (button "Quit" (when clicked (document:end))))
Стас, а упакуй это добро, а? Или сам не применяешь? :)