Commit graph

1563 commits

Author SHA1 Message Date
suke
ba30d87a36 add WIN32OLE_VARIANT class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-13 12:22:12 +00:00
suke
31c063eac3 add WIN32OLE_VARIANT class
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-13 12:13:20 +00:00
nobu
96d7c07e49 * ext/stringio/stringio.c (strio_set_string): disallow nil.
http://www.rubyist.net/~nobu/t/20050811.html#c05


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-13 09:36:12 +00:00
naruse
2bf3c6b631 * ext/nkf/lib/kconv.rb: Kconv.kconv is now alias of Kconv.conv
* ext/nkf/lib/kconv.rb: remove nkf dependend symbols fomr SYMBOL_TO_OPTION


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-12 23:19:58 +00:00
suke
f50c302e77 * ext/win32ole/win32ole.c (WIN32OLE_EVENT#on_event): should set
only one event handler.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-12 12:58:47 +00:00
nobu
c06b78ca92 * ext/stringio/stringio.c: keep holding string after closed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-11 14:29:46 +00:00
nagai
5a0361f84c * ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
* ext/tk/lib/tk/itemconfig.rb: fix bug on handling
  __item_ruby2val_optkeys().
* ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys().
* ext/tk/lib/tkextlib/blt/component.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-10 01:32:44 +00:00
nagai
c1566b7490 * ext/tk/tcltklib.c: remove dangerous 'rb_jump_tag's.
* ext/tk/lib/tk.rb: add __val2ruby_optkeys and __ruby2val_optkeys to
  help to convert option values between ruby and tcl.
* ext/tk/lib/tk/itemconfig.rb: add __item_val2ruby_optkeys and
  __item_ruby2val_optkeys to help to convert option values between
  ruby and tcl.
* ext/tk/lib/tk/radiobutton.rb: use __ruby2val_optkeys for 'variable'
  option (for the reason of backward compatibility).
* ext/tk/lib/tk/composite.rb: clarify the arguments of super().
* ext/tk/lib/tk/spinbox.rb: ditto.
* ext/tk/lib/tk/text.rb: ditto.
* ext/tk/lib/tk/validation.rb: ditto.
* ext/tk/lib/tkextlib/*: support to treat tkvariable-type
  configure options.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-09 06:16:29 +00:00
ocean
e84219391f * ext/tk/tcltklib.c: restored some DUMPs
* ext/tk/tcltklib.c (ip_ruby_cmd): moved rb_ary_new2 because this
  raises exception if argc < 3.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-08 16:18:29 +00:00
gotoyuzo
ec46711668 * ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_error
to get last error on the current thread. And should report
  if errors are on the stack while OpenSSL.debug is true.

* ext/openssl/ossl.c (ossl_get_errors): new method for debugging
  this library.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-07 20:21:40 +00:00
ocean
8eb3323a69 * ext/tk/tcltklib.c: combined tcl_protect and tcl_check_result.
[ruby-dev:26753]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-06 16:27:12 +00:00
ocean
58d86a2035 * ext/tk/lib/{tk.rb,tk/itemconfig.rb}: configure creates
TkVariable if key name is 'variable' or 'textvariable'
  by default. [ruby-dev:26749]

* ext/tk/lib/tk/{label,radiobutton}.rb: removed its own
  {variable,textvariable} function.

* ext/tk/lib/tk/variable.rb: retains backward conpatibility.

(written by Hidetoshi NAGAI)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-06 03:44:00 +00:00
ocean
d9498f743b * ext/tk/tcltklib.c: rectoring - tcl_protect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-05 11:22:51 +00:00
ocean
993ad912a2 * ext/tk/tcltklib.c: refactoring - extracted status check as function.
(tcl_check_result) ... previous commit is actually "extracted protect call"


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-05 09:20:13 +00:00
ocean
a39d6b1f80 * ext/tk/tcltklib.c: refactoring - extracted status check as function. (tcl_protect)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-05 08:12:53 +00:00
ocean
74d91a4c31 * ext/tk/tcltklib.c: fixed memory leak when tk_funcall raised
exception. (copies argv into heap in tk_funcall instead of
  caller)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-05 03:51:50 +00:00
ocean
6c8633ab99 * ext/tk/tcltklib.c: refactoring - extract ruby string <->
tcl object conversion as get_str_from_obj and get_obj_from_str.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 15:26:05 +00:00
nobu
7c2dad9c1f * extmk.rb (extmake): needs to be wrapped in an Array.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 15:20:10 +00:00
nagai
c9ec812897 * ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
* ext/tk/tcltklib.c: add nativethread consistency check.
* ext/tk/stubs.c: ditto.
* ext/tk/lib/tk.rb: forgot to define TclTkIp.encoding and encoding=
  when Tcl is 7.6 or 8.0.
* ext/tk/lib/tk/wm.rb: support to make some methods as options of
  root or toplevel widget. [ruby-talk:150336]
* ext/tk/lib/tk/root.rb: ditto.
* ext/tk/lib/tk/toplevel.rb: ditto.
* ext/tk/lib/tkextlib/SUPPRT_STATUS: update RELEASE_DATE


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 09:41:57 +00:00
ocean
85eadbbf8c reverted. [ruby-dev:26726]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 05:04:53 +00:00
ocean
a6c074a47a just fixed indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 04:54:08 +00:00
ocean
7b1bdb68e9 * ext/tk/sample/tkextlib/tile/demo.rb: followed previous changes.
* ext/tk/lib/tkextlib/tile/t*.rb: aliased class names starting with 'T'
  to non 'T' ones. (ie. Tk::Tile::TButton -> Tk::Tile::Button)
  [ruby-dev:26724]

* ext/tk/lib/tkextlib/tile.rb: ditto. (autoload support)

(Written by Hidetoshi NAGAI)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 04:48:13 +00:00
ocean
a767a76ad1 * ext/tk/sample/tkextlib/tile/demo.rb: fixed: Tk::Tile::TProgressbar is
supported on tile 0.6 or later, not tile 0.5.

* ext/tk/sample/tkextlib/tile/demo.rb: updated scales demo to use
  Tk::Tile::TProgressbar for tile 0.6 or later.

* ext/tk/sample/tkextlib/tile/demo.rb: set some TkVariable default values.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 04:16:27 +00:00
nobu
b7f6c8989a * ext/extmk.rb (extmake): should not modify $mflags for each
extentions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-03 23:04:16 +00:00
ocean
af41a0c146 * ext/tk/lib/tk/variable.rb: TkVariable#trace didn't work on
TkVariable retrived from TkVariable.new_hash.ref. [ruby-dev:26721]
  (written by Hidetoshi NAGAI)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-03 13:10:48 +00:00
matz
5ddbcc5de4 * ext/socket/socket.c (ruby_connect): revert [ruby-talk:111654]
changes at 2004-09-07.  [ruby-dev:26656]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 23:25:35 +00:00
ocean
28c635fa9a * ext/tk/lib/tkextlib/tile/treeview.rb: Tk::Tile::Treeview#headingconfigure
is now working and more. [ruby-dev:26716]

* ext/tk/sample/tkextlib/tile/demo.rb: use Tk::Tile::Treeview#headingconfigure
  instead of direct Tk.tk_call.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 21:05:17 +00:00
ocean
a26cec27e1 * ext/tk/lib/tkextlib/tile/tprogressbar.rb: Tk::Tile::TProgressbar#start
takes optional argument `interval'.

* ext/tk/sample/tkextlib/tile/demo.rb: emulate Tk::Tile::TProgressbar
  with Tk::Tile::TProgress in tile 0.4. (repeating buttons demo)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 11:49:46 +00:00
ocean
909e63ac3c * ext/tk/sample/tkextlib/tile/demo.rb: added repeating buttons demo.
* ext/tk/sample/tkextlib/tile/repeater.tcl: ditto. (new file)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 06:51:26 +00:00
ocean
91d7a02959 * ext/tk/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)

* ext/tk/tcltklib.c: use ip_{get,set,unset}_variable2_core from
  ip_{get,set,unset}_variable.

* ext/tk/tcltklib.c: replaced Tcl_Panic with rb_bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 01:25:01 +00:00
ocean
b73cd9cb5c * ext/tk/lib/tkextlib/tile.rb: fixed autoload for Treeview.
* ext/tk/lib/tkextlib/tile/treeview.rb: replaced `ary2tk_list(items)' with
  `*items'.

* ext/tk/sample/tkextlib/tile: added treeview demo. (tile 0.5 or later is
  needed) [ruby-dev:26668]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 10:25:51 +00:00
ocean
87ecfbd773 * ext/tk/tcltklib.c: refactoring - replaced rb_ivar_defined &
rb_ivar_get with single rb_attr_get call.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 10:09:28 +00:00
ocean
5b9896ea24 * ext/tk/tcltklib.c (Tcl_GetStringResult): refactoring - define
alternative macro on Tcl7.x or earlier.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 09:47:54 +00:00
ocean
9aab7083a8 * ext/tk/sample/tkextlib/tile/demo.rb: added combobox demo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 06:35:15 +00:00
ocean
80ed1f46d1 * ext/tk/tcltklib.c (deleted_ip): refactoring - interpreter deletion
check.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 04:57:28 +00:00
suke
14f0a0d0bd add WIN32OLE_TYPE#ole_typelib, WIN32OLE_TYPE#implemented_ole_types.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-30 09:51:48 +00:00
nagai
41d41fbdb9 * ext/tk/stubs.c: When --enable-tcltk-stubs, the initialize
routine creates a Tcl/Tk interpreter and deletes it. However,
  init cost of Tk's MainWindow is not so small. And that makes it
  impossible to use libraries written with Tcl functions only on
  an environment without a graphical display. This changes support
  delaying initalization of Tk_Stubs until the script needs Tk.
* ext/tk/stubs.h: New file. Define prototypes and return codes of
  functions on stubs.c.
* ext/tk/tcltklib.c: Support delaying initalization of Tk_Stubs
  until the script needs Tk.
* ext/tk/tcltklib.c: Show friendly error messages for errors on
  initialization.
* ext/tk/tcltklib.c: Avoid SEGV on ip_finalize() when ruby is
  exiting and $DEBUG is true. (Not fix. If you know the reason of
  why, please fix it.)
* ext/tk/tkutil/tkutil.c (ary2list, ary2list2): bug fix on handling
  of encoding.
* ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
  don't work propery.
* ext/tk/lib/tk.rb: Forget extending Tk::Encoding module to Tk.
* ext/tk/lib/tk/variable.rb: TkVarAccess fails to initialize the
  object for an element of a Tcl's array variable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-28 09:14:59 +00:00
matz
989b0a6d1e * parse.y (f_larglist): allow bv_decl at the end of lambda
argument list.  [EXPERIMENTAL]

* parse.y (new_bv_gen): allow local variable shadowing, with
  warning in verbose mode.

* ext/socket/socket.c (ruby_connect): break immediately if a
  socket is non-blocking.  [ruby-talk:111654]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-28 02:33:28 +00:00
matz
759a63b6a3 * parse.y (lambda): Perl6 style -> lambda expression. [NEW]
[VERY EXPERIMENTAL]

* gc.c (id2ref): must not assign pointers to long int.  use
  LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
  [ruby-talk:149645]

* ruby.h: use LONG_LONG to simplify the change.
  [ruby-talk:149645]

* dir.c (dir_each): rewinddir(3) before iteration.
  [ruby-talk:149628]

* eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
  [ruby-talk:149553]

* missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
  size pointer.  [ruby-talk:149553]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-27 07:27:19 +00:00
ocean
2ea2d95e81 * ext/tk/sample/tkextlib/tile/demo.rb: fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-27 01:57:14 +00:00
aamine
57c8f59761 * ext/ripper/lib/ripper/sexp.rb: new method Ripper.sexp_raw.
* ext/ripper/lib/ripper/sexp.rb (Ripper.sexp): returns more readable tree.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8841 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-26 13:42:49 +00:00
gotoyuzo
09e5e42d3e * ext/openssl/openssl_missin.c: include <openssl/engine.h> before
<openssl/x509_vfy.h> to avoid compilation error of mswin32.
  suggested by NAKAMURA Usaku.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-26 03:59:39 +00:00
nagai
b535e9b004 * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-25 05:11:19 +00:00
gotoyuzo
b502b16eb6 * ext/openssl/ossl_engine.c (ossl_engine_s_load): should check
OPENSSL_NO_STATIC_ENGINE.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-23 07:50:17 +00:00
nagai
17743ce0a8 * ext/tk/tkutil/tkutil.c (tk_conv_args): forget to revert
thread_critical and gc_disable when raise ArgumentError.
* ext/tk/lib/remote-tk.rb: RemoteTkIp doesn't need to include TkUtil.
* ext/tk/tcltklib.c: add TclTkIp#has_mainwindow? method.
* ext/tk/lib/tk.rb: add Tk.has_mainwindow? method.
* ext/tk/lib/multi-tk.rb: add MultiTkIp#has_mainwindow? method.
* ext/tk/lib/remote-tk.rb: add RemoteTkIp#has_mainwindow? method.
* ext/tk/lib/multi-tk.rb: slave IP fail to exit itself when $SAFE==4.
* ext/tk/lib/multi-tk.rb: remove constants from MultiTkIp module to
  avoid access from external.
* ext/tk/lib/multi-tk.rb: check_root flag is ignored on slave IPs'
  mainloop.
* ext/tk/lib/multi-tk.rb: hang-up Tk.mainloop called on a slave IP
  with $SAFE==4.
* ext/tk/lib/multi-tk.rb: MultiTkIp#bg_eval_proc doesn't work
  properly.
* ext/tk/lib/multi-tk.rb: add MultiTkIp#set_cb_error(proc) and
  cb_error(exc) to log errors at callbacks on safe slave IPs.
* ext/tk/lib/multi-tk.rb: fail to get an available slave IP object
  when call Tk.mainloop in the block which is given to new_* method,
  because cannot finish initialize while the root widget is alive.
* ext/tk/lib/multi-tk.rb: fail to control a slave IP when Tk.mainloop
  runs on the IP.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-21 22:05:04 +00:00
naruse
0580cf2696 * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
import 1.76
  [ruby-dev:26592] nkf constification


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-21 16:13:08 +00:00
ocean
81ad8ec096 * ext/socket/socket.c: sorry, BeOS also uses HAVE_CLOSESOCKET,
so reverted.

* ext/socket/extconf.rb: should not define HAVE_CLOSESOCKET
  on windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19 19:04:46 +00:00
ocean
a41331918f * ext/socket/socket.c: should not undef close on win32.
it's defined to rb_w32_close, otherwise handle leaks.
  [ruby-Bugs-2131]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19 18:18:51 +00:00
nagai
1fb55b9d77 * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19 06:57:46 +00:00
ocean
9042a601c8 * ext/tk/tcltklib.c: rbtk_eventloop_depth is used as int.
* ext/tk/tcltklib.c: rbtk_pending_exception is tested with
  NIL_P, so should assign Qnil instead of 0 (Qfalse).

* ext/tk/tcltklib.c (ip_invoke_real): fixed memory leak when
  ip is deleted.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19 05:12:52 +00:00