A few other projects have the line with 'Ncurses::mousemask...' in
them - but it's always commented out... like they couldn't get it
working either.
Is this feature not functional?
I've currently got 'Ncurses::mousemask(Ncurses::ALL_MOUSE_EVENTS,[])'
and the error 'wrong number of arguments (2 for 1)' and as soon as I
drop the second arg I get the error 'oldmask (2nd argument) must be an
empty Array' which is kinda bothersome... :-)
Any hints? Tobias?
-Rich
They couldn't
> Is this feature not functional?
It's a bug in the method definition; see below.
> I've currently got 'Ncurses::mousemask(Ncurses::ALL_MOUSE_EVENTS,[])'
> and the error 'wrong number of arguments (2 for 1)' and as soon as I
> drop the second arg I get the error 'oldmask (2nd argument) must be an
> empty Array' which is kinda bothersome... :-)
It's a bug in the library. It's been there forever (I came across it
when I was trying to add mouse support to Raggle, then just forgot to
send a patch upstream).
> Any hints? Tobias?
Apply this patch (also attached):
diff -ur ncurses-ruby-0.9.2/ncurses_wrap.c ncurses-ruby-0.9.2-mousemask/ncurses_wrap.c
--- ncurses-ruby-0.9.2/ncurses_wrap.c 2005-12-12 16:33:00.000000000 -0500
+++ ncurses-ruby-0.9.2-mousemask/ncurses_wrap.c 2005-02-26 19:22:13.000000000 -0500
@@ -2387,7 +2387,7 @@
NCFUNC(ungetmouse, 1);
#endif
#ifdef HAVE_MOUSEMASK
- NCFUNC(mousemask, 2);
+ NCFUNC(mousemask, 1);
#endif
#ifdef HAVE_WENCLOSE
rb_define_module_function(mNcurses, "wenclose?",
--
Paul Duncan <pa...@pablotron.org> pabs in #ruby-lang (OPN IRC)
http://www.pablotron.org/ OpenPGP Key ID: 0x82C29562
Err, my patch is backwards... Here's the correct one (again, attached):
diff -ur ncurses-ruby-0.9.2/ncurses_wrap.c ncurses-ruby-0.9.2-mousemask_fix/ncurses_wrap.c
--- ncurses-ruby-0.9.2/ncurses_wrap.c 2005-02-26 19:22:13.000000000 -0500
+++ ncurses-ruby-0.9.2-mousemask_fix/ncurses_wrap.c 2005-12-12 16:42:11.000000000 -0500
@@ -2387,7 +2387,7 @@
NCFUNC(ungetmouse, 1);
#endif
#ifdef HAVE_MOUSEMASK
- NCFUNC(mousemask, 1);
+ NCFUNC(mousemask, 2);
If you can't, then that's the straw that breaks it.
Again - thanks for the reply.
-Rich
That's a terminal-dependent feature. If the terminal supports it,
one can write a terminfo that describes it (as a function-key).
(n)curses supports up to 60 function keys (which you would probably
find too limiting ;-)
bye.
--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net