1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

13 commits

Author SHA1 Message Date
nagai
ed9a1f3e8f * ext/tk/lib/multi-tk.rb: add restriction to access the entried
command table and manipulate other IPs (for reason of security).
  Now, a IP object can be controlled by only its master IP or the
  default IP.
* ext/tk/lib/remote-tk.rb: add restriction to manipulate.
* ext/tk/tcltklib.c (ip_is_slave_of_p): add TclTkIp#slave_of?(ip)
  to check manipulability.
* ext/tk/lib/tk.rb: bug fix on handling of Tcl's namespaces.
* ext/tk/lib/tk/namespace.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-18 08:39:29 +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
nagai
e3849ae987 * ext/tk/tcltklib.c: bug fix on treating Unicode strings.
* ext/tk/tcltklib.c: add methods to treat encoding mode.
* ext/tk/MANUAL_tcltklib.eng: add description of TclTkLib#encoding,
  encoding_system, and so on.
* ext/tk/MANUAL_tcltklib.eucj: ditto.
* ext/tk/tkutil/tkutil.c: fail to create a Tcl's list string from
  an array including multiple kind of encoded strings.
* ext/tk/lib/tk.rb: ditto.
* ext/tk/lib/multi-tk.rb: 2nd arg of _{to|from}UTF8 is omissible.
* ext/tk/lib/remote-tk.rb: ditto.
* ext/tk/lib/tk.rb: override TclTkLib#encoding and encoding= to
  use TkCore::INTERP.encoding and encoding=.
* ext/tk/lib/tk.rb: when "require 'tk'" and $KCODE=='NONE', check
  DEFAULT_TK_ENCODING to decide Ruby/Tk's system encoding mode.
* ext/tk/lib/tk/encodedstr.rb: check both of Tk.encoding and
  Tk.encoding_system. Tk.encoding has higher priority.
* ext/tk/lib/tk/optiondb.rb: ditto.
* ext/tk/lib/tk/spinbox.rb: ditto.
* ext/tk/lib/tk/validation.rb: ditto.
* ext/tk/lib/tk/namespace.rb: arguemnts for TclTkIp#_merge_tklist
  should be UTF-8 strings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-05 05:56:31 +00:00
nagai
90537dbe3c * ext/tk/lib/tk.rb: TkComm#tk_split_*list fail to split a kind of SJIS
strings. To avoid the trouble, add arguments to control converting
  encoding, and do split on a UTF8 string.
* ext/tk/lib/multi-tk.rb: modify to attend encoding.
* ext/tk/lib/remote-tk.rb: ditto.
* ext/tk/lib/tk/itemconfig.rb: ditto.
* ext/tk/lib/tk/listbox.rb: ditto.
* ext/tk/lib/tk/namespace.rb: ditto.
* ext/tk/lib/tk/panedwindow.rb: ditto.
* ext/tk/lib/tk/text.rb: ditto.
* ext/tk/lib/tk/textmark.rb: ditto.
* ext/tk/lib/tk/texttag.rb: ditto.
* ext/tk/lib/tk/variable.rb: ditto.
* ext/tk/lib/tk/winfo.rb: ditto.
* ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb: ditto.
* ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: ditto.
* ext/tk/lib/tk.rb: add TkWindow#lower_window/raise_window and
  Tk#lower_window/raise_window by reason of method-name conflict
* ext/tk/lib/tk/canvas.rb: bug fix on TkCanvas#delete when given
  non-TkcItem arguments.
* ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-25 11:09:59 +00:00
nagai
11974f26b3 * ext/tk/tcltklib.c: add TclTkIp#_create_console() method to create
a Tcl/Tk's console window.
* ext/tk/lib/multi-tk.rb: support TclTkIp#_create_console() method.
* ext/tk/lib/remote-tk.rb: ditto.
* ext/tk/lib/tk/console.rb: ditto.
* ext/tk/lib/tk.rb: update RELEASE_DATE
* ext/tk/sample/demo-*/check2.rb: use 'return' in the Proc object.
* ext/tk/sample/tkextlib/**: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-30 08:44:19 +00:00
nagai
75b202c933 * ext/tk/tcltklib.c: add invalid namespace check
* ext/tk/lib/multi-tk.rb: add invalid_namespace? method
* ext/tk/lib/remote-tk.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-31 04:14:50 +00:00
nagai
10484e5c95 * ext/tcltklib/tcltklib.c: fix SEGV bug; trouble on canceling remained
after scripts [ruby-dev:25479]: NULL current namespce when deleting
  Tk interpreter [ruby-talk:126225]
* ext/tcltklib/extconf.rb: bug fix; TCL_ENABLE_THREAD flag is inverted
  [ruby-talk:126360]
* ext/tcltklib/extconf.rb: add yet another native-thread check
* ext/tk/tkutil.c: fix SEGV bug; NULL string pointer when finalize
  Ruby interpreter
* ext/tk/lib/multi-tk.rb: avoid warning for deleted safeTk ip frame
* ext/tk/lib/tk/bindtag.rb: bug fix; new method of named bindtag
  doesn't return the created object [ruby-dev:25479]
* ext/tk/lib/tk/menu.rb: bug on treating arguments [ruby-dev:25479]
* ext/tk/lib/tk.rb: bug fix; cannot accept a callback ID string for
  a command argument [ruby-dev:25479]
* ext/tk/lib/multi-tk.rb: ditto
* ext/tk/lib/tk/*.rb: ditto
* ext/tk/lib/tkextlib/*.rb: ditto
* ext/tk/sample/demos-jp/anilabel.rb: new demo script
* ext/tk/sample/demos-en/anilabel.rb: ditto
* ext/tk/sample/tkHTML/ss.rb: local variable scope bug fix
  [ruby-dev:25479]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-25 05:09:22 +00:00
nagai
3514110b89 * ext/tk/lib/tk/*: untabify
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-11 04:51:21 +00:00
nagai
2785975489 * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or (thread_)tkwait
* ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
* ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave interpreters
  (however, the 'real' eventloop must be run on the Default Master IP)
* ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
* ext/tk/sample/remote-ip_sample2.rb: ditto
* ext/tk/sample/tkoptdb-safeTk.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 06:05:33 +00:00
nagai
82ba5974c4 * ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and allow_ruby_exit=
* ext/tk/lib/multi-tk.rb: ditto.
* ext/tk/lib/remote-tk.rb: ditto.
* ext/tcltklib/MANUAL.euc: ditto.
* ext/tcltklib/MANUAL.eng: ditto.

* ext/tcltklib/tcltklib.c: fix some reasons of SEGV
* ext/tk/tkutil.c: ditto.
* ext/tk/lib/multi-tk.rb: ditto.
* ext/tk/lib/tk/timer.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-11 17:45:53 +00:00
nagai
d782aad77d * ext/tcltklib/tcltklib.c (ip_init): change flag value for setting 'argv' and 'argv0' variable
* ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-09 05:03:21 +00:00
nagai
3676a70e7b * ext/tk/lib/remote-tk.rb: bug fix
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-14 09:25:06 +00:00
nagai
56761e29f6 * ext/tk/lib/tk.rb: add Tk.appsend_deny and improve Tk.rb_appsend
* ext/tk/lib/tk.rb, ext/tk/lib/tk/*.rb : replace obj.send() -> obj.__send__()
* ext/tk/lib/remote-tk.rb: add a new library which create an object to
                           control a Tk interpreter on the other process


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-21 20:45:27 +00:00