Yes, it is clever, and it appears to work, but I have a question: does
he lose anything important by not defining his dialog-item-window as
an instance of lisp-widget-window and/or lisp-widget-top-window? If
the answer is yes, can what is lost be safely regained by including
the aforementioned classes in the inheritance list?
Looks like about the only significant thing is handling of the
keyboard focus, where lisp-widget-draw-focus and
lisp-widget-clear-focus are called when it gets and loses the focus,
and the widget's dialog-item-set-focus and dialog-item-kill-focus
functions (if any) get called. This may not be much of an issue
if you're not explicitly drawing something to denote focus and
don't need to add set/kill-focus side effects.
Ken Cheetham <franz.com at cheetham>
Franz Inc. Voice: (510) 548-3600
1995 University Avenue, Suite 275 Fax: (510) 548-8253
Berkeley, CA 94704 http: //www.franz.com/
ACL Windows FAQ: ftp.franz.com:/pub/acl4w-faq
ACL Unix FAQ: ftp.franz.com:/pub/faq