Commit graph

56 commits

Author SHA1 Message Date
nagai
8784f9c235 * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
* ext/tk/lib/tk.rb: update RELEASE_DATE.
* ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
* ext/tk/stubs.c: fix potential bugs about handling rb_argv0.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-18 08:43:10 +00:00
nagai
52d25a671b * ext/tk/tcltklib.c: fix SEGV when embedding to an application.
[ruby-core:7600]
* ext/tk/tcltklib.c: fix SEGV at exit. [ruby-talk:186489]
* ext/tk/tkutil/tkutil.c: follow to changing specification of
  instance_eval on ruby-1.9.x.
* ext/tk/lib/tk.rb: ditto.
* ext/tk/lib/multi-tk.rb: ditto.
* ext/tk/lib/tk.rb: remove warning about redefinition of methods.
* ext/tk/lib/tk/variable.rb: remove warning about unseting Tcl
 variables.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-05 16:08:45 +00:00
nagai
5cc002a132 * ext/tk/lib/multi-tk.rb: add MultiTkIp#eval and bg_eval.
* ext/tk/lib/tk/namespace.rb: TkNamespace#eval was enbugged at the
  last commit. Now it will return a proper object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-01-31 03:01:31 +00:00
nagai
8b87997160 * ext/tk/README.macosx-aqua: [new document] tips to avoid the known
bug on platform specific dialogs of Tcl/Tk Aqua on MacOS X.
* ext/tk/tcltklib.c: fix bug on switching threads and waiting on the
  deleted interpreter on vwait and tkwait command.
* ext/tk/lib/multi-tk.rb: kill the meaningless loop for the deleted Tk
  interpreter.
* ext/tk/sample/demos-jp/image3.rb: [bug fix] wrong argument.
* ext/tk/sample/demos-en/image3.rb: ditto.
* ext/tk/sample/demos-jp/menu.rb: fix message for MacOS X.
* ext/tk/sample/demos-jp/menu8x.rb: ditto.
* ext/tk/sample/demos-en/menu.rb: ditto.
* ext/tk/sample/demos-jp/widget; update version-info.
* ext/tk/sample/demos-en/widget; ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-06 16:05:50 +00:00
nagai
d3a17b1ee0 * 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/branches/ruby_1_8@9562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-18 08:39:29 +00:00
nagai
4ea05aa254 * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
should call Kernel.eval on caller's safe-level instead of slave's
  safe-level (Of course, the given script should be evaluated on
  slave's safe-level).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-17 01:44:28 +00:00
nagai
36dc7c8751 * ext/tk/lib/multi-tk.rb: fix typo on MultiTkIp#bg_eval_string
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-16 05:50:56 +00:00
nagai
9138b29822 * ext/tk/lib/multi-tk.rb: On Tcl8.5, MultiTkIp#invoke_hidden doesn't
work (gives wrong order of arguments).
* ext/tk/lib/multi-tk.rb: add MultiTkIp#invoke_hidden_on_namespace
  to support '-namespace' option of 'interp invokehidden' command
  on Tcl8.5.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-01 05:15:19 +00:00
nagai
3332a04e05 * ext/tcltklib/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/tcltklib/stubs.h: New file. Define prototypes and return
  codes of functions on stubs.c.
* ext/tcltklib/tcltklib.c: Support delaying initalization of
  Tk_Stubs until the script needs Tk.
* ext/tcltklib/tcltklib.c: Show friendly error messages for errors
  on initialization.
* ext/tcltklib/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.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/branches/ruby_1_8@8861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-28 09:15:37 +00:00
nagai
4af6b52fc0 * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-25 05:11:19 +00:00
nagai
ecf2813198 * ext/tk/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/tcltklib/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/branches/ruby_1_8@8817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-21 22:04:43 +00:00
nagai
b93372d43c * ext/tcltklib/tcltklib.c: bug fix on treating Unicode strings.
* ext/tcltklib/tcltklib.c: add methods to treat encoding mode.
* ext/tcltklib/MANUAL.eng: add description of TclTkLib#encoding,
  encoding_system, and so on.
* ext/tcltklib/MANUAL.euc: ditto.
* ext/tk/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/branches/ruby_1_8@8720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-05 05:55:58 +00:00
nagai
5805c5d5bb * ext/tk/lib/multi-tk.rb: slave-ip fails to call procedures
delegated by master-ip.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-07 01:33:12 +00:00
nagai
02f99c0dde * ext/tk/lib/multi-tk.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-03 05:08:40 +00:00
nagai
9130381a8c * 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/branches/ruby_1_8@8521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-25 11:09:59 +00:00
nagai
69ef4bae62 * ext/tcltklib/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/branches/ruby_1_8@8213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-30 08:44:55 +00:00
nagai
7a7bf8b8bf * ext/tk/lib/multi-tk.rb: freeze callback-entry objects
* ext/tk/lib/tkextlib/tile.rb: support tile-0.6


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05 07:35:41 +00:00
nagai
d7d2f8bfe2 * ext/tcltklib/tcltklib.c: enforce thread-check and exception-handling to
avoid SEGV trouble.
  [KNOWN BUG] When supports pthread and running multiple Tk interpreters,
  an interrupt signal causes SEGV frequently. That may be a trouble of
  Ruby's signal handler.
* ext/tk/tkutil/tkutil.c; fix a bug on converting a SJIS string array
  to a Tcl's list string.
* ext/tk/tcltklib.c: wrap Tcl's original "namespace" command to
  protect from namespace crash.
* ext/tk/lib/multi-tk.rb: enforce exception-handling.
* ext/tk/lib/multi-tk.rb: catch IRB_EXIT to work on irb.
* ext/tk/lib/tk.rb: ditto.
* ext/tk/tcltklib.c: add TclTkLib.mainloop_thread?
* ext/tk/lib/multi-tk.rb: (bug fix) callback returns a value.
* ext/tk/lib/tk/canvas.rb (delete): bug fix when multiple arguments.
* ext/tk/lib/clock.rb: fix 'no method error'.
* ext/tk/lib/clock.rb (self.clicks): accept a Symbol argument.
* ext/tk/lib/variable.rb: be able to set default_value_type; :numeric,
  :bool, :string, :symbol, :list, :numlist or nil (default; same to
  :string). If set a type, TkVariable#value returns a value of the type.
* ext/tk/lib/tkextlib/tclx/tclx.rb: add Tk::TclX.signal to warn the
  risk of using TclX extension's 'signal' command.
* ext/tk/sample/irbtk.rb: irb with Ruby/Tk.
* ext/tk/sample/demos-*/anilabel.rb: bug fix on 'show code'
* ext/tk/sample/demos-*/aniwave.rb: new Ruby/Tk animation demo.
* ext/tk/sample/demos-*/pendulum.rb: ditto.
* ext/tk/sample/demos-*/goldberg.rb: ditto.
* ext/tk/sample/demos-*/widget: add entries of animation demos.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-02 07:08:18 +00:00
nagai
7814a68ac6 * ext/tcltklib/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/branches/ruby_1_8@7853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-31 04:34:35 +00:00
nagai
4f7d0eaaf3 * 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/branches/ruby_1_8@7821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-25 05:09:22 +00:00
nagai
23182e77ad * ext/tcltklib/tcltklib.c: fix SEGV bug when deleting Tk interp
* ext/tk/lib/multi-tk.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-27 11:04:21 +00:00
nagai
8a73532bd8 * ext/tk/lib/multi-tk.rb: supports new features of Tcl/Tk8.5a2
* ext/tk/lib/tk/clock.rb: ditto
* ext/tk/lib/tk/text.rb: ditto
* ext/tk/lib/tk/panedwindow.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-20 05:10:59 +00:00
nagai
805bd6fb8c * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]
* ext/tk/lib/tk/timer.rb: accept :idle for the interval argument
* ext/tk/lib/tk.rb: add TkComm._callback_entry?()
* ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class
* ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?()
* ext/tk/lib/tk/canvastag.rb: ditto
* ext/tk/lib/tk/dialog.rb: ditto
* ext/tk/lib/tk/optiondb.rb: ditto
* ext/tk/lib/tk/text.rb: ditto
* ext/tk/lib/tk/texttag.rb: ditto
* ext/tk/lib/tk/textwindow.rb: ditto
* ext/tk/lib/tk/timer.rb: ditto
* ext/tk/lib/tk/validation.rb: ditto
* ext/tk/lib/tkextlib/*: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-16 07:13:14 +00:00
nagai
94d960beb5 * ext/tk/lib/tk/*: untabify
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-11 04:51:21 +00:00
nagai
ffb051a4ec * ext/tcltklib/tcltklib.c (ip_init): bug fix
* ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
* ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
* ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
  matting pattern argument


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-29 15:54:32 +00:00
nagai
a9dc36c94f * ext/tk/lib/multi-tk.rb: improve exit operation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 07:09:28 +00:00
nagai
5e11639266 * 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/branches/ruby_1_8@6916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 06:05:33 +00:00
nagai
72a8e9ff8c * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by the
previous changes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 14:59:04 +00:00
nagai
e02f79dfe9 * ext/tcltklib/tcltklib.c: fix SEGV
* ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
* ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
* ext/tk/sample/safe-tk.rb: new sample script


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-14 08:01:55 +00:00
nagai
d5188667bc * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
safe-level value argument


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-13 07:25:02 +00:00
nagai
a821833bb3 * 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/branches/ruby_1_8@6884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-11 17:45:53 +00:00
nagai
4350f22000 * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
* ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check, and error treatment
* ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs.
* ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and erase
* ext/tk/lib/tk/text.rb: add TkText#clear and erase


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-08 06:23:41 +00:00
nagai
b609f925a3 * ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
* ext/tk/lib/tk/text.rb: fix typo
* ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-02 17:17:20 +00:00
nagai
bf5fde05a1 * ext/tk/lib/multi-tk.rb: 'restart' method accepts arguments
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-30 13:42:19 +00:00
nagai
5272c137f5 * ext/tcltklib/tcltklib.c: compile error on bcc32 [ruby-dev:24081]
* ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string does not work


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-29 05:12:00 +00:00
nagai
7050e0c745 * ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) support
* ext/tcltklib/tcltklib.c: fix thread trouble on callback proc, and
			   eliminate warning about instance variable access
* ext/tk/lib/tk/menubar.rb: improve supported menu_spec
* ext/tk/lib/tk/menuspec.rb: [add] menu_spec support library
* ext/tk/lib/tk/root.rb: add menu_spec support
* ext/tk/lib/tk/text.rb: bug fix
* ext/tk/lib/tk/toplevel.rb: add menu_spec support
* ext/tk/sample/menubar?.rb: [add] sample of menu_spec usage


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-12 15:25:49 +00:00
nagai
ea710f0dca * 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/branches/ruby_1_8@6384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-21 20:45:27 +00:00
nagai
f1c3638777 * renewal Ruby/Tk
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-01 16:09:54 +00:00
matz
c96f53e1aa * eval.c (rb_mod_modfunc): should break if m has no super class.
[ruby-dev:22498]

* backport changes from 1.9


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@5391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-06 14:00:54 +00:00
nagai
c90fab98a2 * ext/tk/lib/tk.rb,multi-tk.rb: stop freezing some classes
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-12 21:11:40 +00:00
nagai
382b4ae9a3 ext/tcltklib/tcltklib.c:
* replace Tcl/Tk's vwait and tkwait to switch on threads smoothly and
   avoid seg-fault.
 * add TclTkIp._thread_vwait and _thread_tkwait for waiting on a thread.
   ( Because Tcl/Tk's vwait and tkwait command wait on a eventloop. )
ext/tk/lib/multi-tk.rb:
 * support TclTkIp._thread_vwait and _thread_tkwait
ext/tk/lib/tk.rb:
 * now, TkVariable#wait has 2 arguments.
   If 1st argument is true, waits on a thread. If false, waits on an eventloop.
   If 2nd argument is true, checks existence of rootwidgets. If false, doesn't.
   Default is wait(true, false).
 * add TkVariable#tkwait(arg) which is equal to TkVariable#wait(arg, true)
 * wait_visibility and wait_destroy have an argument for waiting on a
   thread or an eventloop.
 * improve of accessing Tcl/Tk's special variables
ext/tk/lib/tkafter.rb:
 * support 'wait on a thread' and 'wait on an eventloop'


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-14 15:25:45 +00:00
nagai
8951a69a16 * multi-tk.rb: modify security check at creating a new interpreter
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-08 13:16:57 +00:00
nagai
865ff7fb4f * tcltklib.c (lib_mainloop_core): fixed signal-trap bug
* multi-tk.rb, tk.rb, tkafter.rb, tkcanvas.rb, tkfont.rb, tktext.rb,
  tkvirtevent.rb : Ruby/Tk works at $SAFE == 4


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-07 07:10:44 +00:00
nagai
24ff3f4448 * doc/ChangeLog-1.8.0: add changes of Ruby/Tk
* ext/tcltklib/tcltklib.c : some methods have no effect if on slave-IP
* ext/tcltklib/tcltklib.c : can create a interpreter without Tk
* ext/tcltklib/tcltklib.c : bug fix on handling exceptions
* ext/tcltklib/MANUAL.euc : modify
* ext/tk/lib/tk.rb : freeze some core modules
* ext/tk/lib/multi-tk.rb : more secure
* ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
  Tk's list
* ext/tk/lib/tk.rb: improve accessibility of TkVariable object
* ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
  ext/tk/lib/tktext.rb : fix bug of font handling
* ext/tk/lib/tkfont.rb TkFont.new() accepts compound fonts
* process.c: bug fix
* process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
* process.c: deny handling IDs during evaluating the block given to
  the Process::{UID,GID}.switch method


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 08:34:14 +00:00
nagai
4c3328f547 * (bug fix) TkEntry#delete
* (bug fix) some widget demos
* support <TkVariable object> == <Symbol>
  ( "coerce TkVariable" add to the TODO list :-) )
* freeze some object for security reason


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-02 05:04:30 +00:00
nagai
bc8b42fc1e * bug fix : wrong resource file format (resource.{en,jp})
* add Tk::Encoding.{encoding_convertfrom, encoding_convertto}
* add TkOptionDB.read_with_encoding to read non-utf8 resource file


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-31 23:04:45 +00:00
nagai
75362fbd47 * (IMPORTANT BUG FIX) scan of event keywords doesn't work on recent
versions of Tck/Tk
* (bug fix) initialize error of instance variable on TkComposite
* (bug fix) initialize error on encoding-system on MultiTkIp
* (bug fix) trouble on destroying widgets
* (new) add JP and EN version of Ruby/Tk widget demos


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-31 20:52:40 +00:00
nagai
7126624b4e * wrap the command-proc of TkScale : pass the numeric object to the proc
* better support for widgets created on Tk interpreter (without Ruby)
* a little more stable on Multiple Tk interpreters running


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-31 07:59:18 +00:00
nagai
8b97353bf2 * MultiTkIp.new_* accept a block to eval under the new interpreter
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-30 07:23:14 +00:00
nagai
4e0bb56f21 * bug fix
* fix lack of methods for TkEntry
* fix reference of uninitialized variables


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-07-30 07:15:00 +00:00