CLIM mail archive


Commands and argument behavior

I'm having some trouble understanding a command argument behavior.  I'm
running ACL4.2 final.  I have an application frame defined called myframe,
and I have a simple command defined, as follows:

   (define-myframe-command (com-show-object :menu "Show")
      ((object 'myobject :gesture :select))
     (show-object object))

If I use this in a frame which contains an :interactor pane, and I 
select this command from the menu bar, I am prompted for an object 
in the interactor pane, and can select objects from the screen once 
I click on the prompt.  

If the pane has no interactor pane, then objects on the screen 
are immediately selectable (no clicking on the prompt required; 
in fact, no prompt to click on).  All this is ok so far.

I can also define the command as follows, and will get the same

   (define-command (com-show-object :menu "Show" :command-table myframe)
      ((object 'myobject :gesture :select))
     (show-object object))

And alternatively the same for the following:

   (define-command-table mycommands)
   (define-command (com-show-object :menu "Show" :command-table mycommands)
      ((object 'myobject :gesture :select))
     (show-object object))

and then in the define-application-frame

   (:command-table myframe :inherit-from (mycommands) :inherit-menu t)

But if I change this last bit to:

   (:command-table myframe :inherit-from (mycommands) 
                           :menu (("Mymenu" :menu mycommands)))

and I then select the command from the menu, I get no prompt (even with
an interactor pane present), and CLIM simply *beeps* at me (but I see
no other error).

Anybody know what I'm doing wrong?

... Rick

Main Index | Thread Index