[Bug: 21.4.13] `popup-menu' don't work with `let' and don't return useful value under windows

Stephen J. Turnbull stephen at xemacs.org
Wed Jun 16 08:52:17 EDT 2004


>>>>> "Miguel" == Miguel Frasson <frasson at math.leidenuniv.nl> writes:

    Miguel> I didn't managed to get a non-nil returned value from the
    Miguel> function `popup-menu', as one would expect.

    >> Why would one expect that?

    Miguel> I expect that because GNU Emacs does it,

XEmacs had popup menus years before GNU Emacs got them.  GNU ignored
the precedent.  Not our problem.

    Miguel> and it is a logical behavior as I see it.

What you think matters.  But you're just repeating yourself.  If it's
"logical" then you should be able to explain the logic.  Theoretically
we could change the behavior, but I see no particular reason to
support that yet.

    >> There may be some bugs here, but you need to rethink your
    >> report in terms of the way the event loop actually works.

    Miguel> It is very odd that

    Miguel>   (let ...
    Miguel>       popup menu setting vars binded with let )

    Miguel> deal with the variable as it was global.

popup-menu binds callbacks to events.  Then it returns.  Thus when the
variables are accessed as the callbacks are triggered, the let-binding
is gone.  That's what should happen based on the design of a menu
implemented as callbacks.

It's possible to design a menu so that it handles the events itself.
XEmacs doesn't do it that way, though.

    Miguel> If this is normal, GNU Emacs would be very strange.

No, just a different design.


-- 
Institute of Policy and Planning Sciences     http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba                    Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
               Ask not how you can "do" free software business;
              ask what your business can "do for" free software.




More information about the XEmacs-Beta mailing list