On Wed, 2005-04-27 at 21:17 +0200, Paolo Amoroso wrote:
rpgoldman@real-time.com writes:
is this problem a manifestation of some issues with programming (Mc)CLIM?
CLIM does require a lot of study. I frequently browse and re-read the printed copy of the CLIM manual I keep on my shelves. I also print and study all the CLIM code I can get my hands on (a rich source--no pun intended--of aha! moments).
I'm slowly learning CLIM and I usually check LW CLIM manual. I recently printed the Allegro CLIM manual and although they are both based on the spec, Allegro CLIM manual tend to have more examples. There always have been people kind enough to show me a way to solve the problems I had (both on this list and on #lisp). Before asking I usually grep through the CLIM code I found to see how some feature is used.
The last (unsolved :-) problem is related to keystrokes when I define a command with the define-frame-command macro.
I tried to do as described in the allegro CLIM manual:
(define-test-commands-1-command (com-quit :name t :keystroke (:q :control)) () (frame-exit *application-frame*))
but C-q in the interactor does nothing.
The LW CLIM manual gives a different syntax for keystrokes that is not readable with cmucl/McCLIM: :keystroke #\c-\q
I tried to define a gesture: (define-gesture-name :quit :keyboard (#\q :control))
(define-test-commands-1-command (com-quit :name t :keystroke :quit) () (frame-exit *application-frame*))
I have seen examples like this one and I think it should work but it does not (C-q does nothing).
It would be usefull to have a place were to keep these hints. I am not sure McCLIM cliki is the right place. The anotable version of the specs could be a convenient place to put such hints (because one would be able to read the doc and see other users' advices) but the anotations I have seen are mostly about the standard, not very useful for a user with little experience.
Thibault
In the case of the particular problem you mentioned, I immediately recognized a :single-box issue, but didn't exactly remember the argument name and the details. After telling you about ksnapshot, it took me a few minutes to check the manual and find the relevant information.
My impression is that there are two challenges to programming with McCLIM:
[...]
- There seems to be an awful lot of black art to getting a CLIM UI to look right and behave in ways that users will perceive as normal.
Can you provide a few examples?
more easily for new CLIM programmers? I'm still fumbling around myself, so I find it hard to say what would make things easier, since I might just be doing things wrong.
Keep asking questions. I personally try to answer all the CLIM questions posted here and in other Lisp forums--well, I am not always successful :)
Paolo