ruby-changes:8760
From: matz <ko1@a...>
Date: Sat, 22 Nov 2008 03:35:31 +0900 (JST)
Subject: [ruby-changes:8760] Ruby:r20296 (trunk): * ext/curses/curses.c (curses_escdelay_set): support ESCDELAY. a
matz 2008-11-22 03:35:11 +0900 (Sat, 22 Nov 2008) New Revision: 20296 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20296 Log: * ext/curses/curses.c (curses_escdelay_set): support ESCDELAY. a patch from Giancarlo F Bellido <support@c...> in [ruby-core:19961]. Modified files: trunk/ChangeLog trunk/ext/curses/curses.c trunk/ext/curses/extconf.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 20295) +++ ChangeLog (revision 20296) @@ -1,3 +1,9 @@ +Fri Nov 21 22:24:31 2008 Yukihiro Matsumoto <matz@r...> + + * ext/curses/curses.c (curses_escdelay_set): support ESCDELAY. a + patch from Giancarlo F Bellido <support@c...> in + [ruby-core:19961]. + Fri Nov 21 22:17:15 2008 Yukihiro Matsumoto <matz@r...> * ruby.c (usage): -W description updated. [ruby-core:19858] Index: ext/curses/curses.c =================================================================== --- ext/curses/curses.c (revision 20295) +++ ext/curses/curses.c (revision 20296) @@ -573,6 +573,27 @@ } static VALUE +curses_escdelay_set(VALUE obj, VALUE val) +{ +#if defined(HAVE_ESCDELAY) + ESCDELAY=NUM2INT(val); + return INT2NUM(ESCDELAY); +#else + rb_notimplement(); +#endif +} + +static VALUE +curses_escdelay_get(VALUE obj) +{ +#if defined(HAVE_ESCDELAY) + return INT2NUM(ESCDELAY); +#else + rb_notimplement(); +#endif +} + +static VALUE curses_resizeterm(VALUE obj, VALUE lin, VALUE col) { #if defined(HAVE_RESIZETERM) @@ -1419,6 +1440,8 @@ rb_define_method(cMouseEvent, "bstate", curs_mouse_bstate, 0); #endif /* USE_MOUSE */ + rb_define_module_function(mCurses, "ESCDELAY=", curses_escdelay_set, 1); + rb_define_module_function(mCurses, "ESCDELAY", curses_escdelay_get, 0); rb_define_module_function(mCurses, "init_screen", curses_init_screen, 0); rb_define_module_function(mCurses, "close_screen", curses_close_screen, 0); rb_define_module_function(mCurses, "closed?", curses_closed, 0); Index: ext/curses/extconf.rb =================================================================== --- ext/curses/extconf.rb (revision 20295) +++ ext/curses/extconf.rb (revision 20296) @@ -6,6 +6,7 @@ make=false headers = [] + have_library("mytinfo", "tgetent") if /bow/ =~ RUBY_PLATFORM have_library("tinfo", "tgetent") or have_library("termcap", "tgetent") if have_header(*curses=%w"ncurses.h") and have_library("ncurses", "initscr") @@ -27,5 +28,6 @@ if try_static_assert("sizeof(char*)>sizeof(int)", %w[stdio.h stdlib.h]+curses , flag) $defs << flag end + have_var("ESCDELAY", curses) create_makefile("curses") end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/