Commit graph

102 commits

Author SHA1 Message Date
ocean
a08706604e * ext/tcltklib/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/branches/ruby_1_8@8919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 15:28:44 +00:00
nagai
31b2baaefe * ext/tcltklib/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
* ext/tcltklib/tcltklib.c: add nativethread consistency check.
* ext/tcltklib/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/branches/ruby_1_8@8910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 09:41:34 +00:00
ocean
94c6875734 * ext/tcltklib/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)

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

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-02 01:26:02 +00:00
ocean
ced5d5db43 * ext/tcltklib/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/branches/ruby_1_8@8880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 10:10:58 +00:00
ocean
fb31b5d3ec * ext/tcltklib/tcltklib.c (Tcl_GetStringResult): refactoring - define
alternative macro on Tcl7.x or earlier.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 09:48:54 +00:00
ocean
cc7bf2b2e9 * ext/tcltklib/tcltklib.c (deleted_ip): refactoring - interpreter
deletion check.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 04:59: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
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
ocean
f2b951bc0d * ext/tcltklib/tcltklib.c: rbtk_eventloop_depth is used as int.
* ext/tcltklib/tcltklib.c: rbtk_pending_exception is tested with
  NIL_P, so should assign Qnil instead of 0 (Qfalse).

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-19 05:09:54 +00:00
nagai
dbc2cc8c85 * ext/tcltklib/tcltklib.c: TclTkLib.do_one_event doesn't work.
* ext/tk/lib/tk.rb: Tk.thread_update is available.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-13 03:46:35 +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
ocean
f80d8ab63f * ext/tcltklib/tcltklib.c (ip_rb_threadVwaitCommand): Tcl_Release was missing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-16 06:23:47 +00:00
nagai
7d3df9ddc1 * ext/tcltklib/tcltklib.c (ip_invoke_core): call Tcl's "::unknown"
command when can't get information of target command.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-26 13:59:48 +00:00
ocean
5b1c4cde0a * ext/tcltklib/tcltklib.c (ip_RubyExitCommand): exit with status code
via TclTkIp#_eval didn't work. [ruby-talk:139390]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-23 11:04:00 +00:00
ocean
a9c673107b updated TCLTKLIB_RELEASE_DATE
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-22 08:36:00 +00:00
ocean
f7dd138f63 * ext/tk/tcltklib.c (ip_set_exc_message): fixed memory leak.
* ext/tk/tcltklib.c: eTkCallbackReturn was not initialized.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-22 07:57:26 +00:00
nagai
b499274294 * ext/tcltklib/tcltklib.c (ip_finalize): better modification than the
previous commit [ruby-dev:26029].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-12 06:36:22 +00:00
nagai
51d360be64 * ext/tcltklib/tcltklib.c (ip_finalize): fix SEGV when Tcl_GlobalEval()
modifies the argument string to eval.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-12 03:40:27 +00:00
nagai
24807afcea * ext/tcltklib/tcltklib.c (ip_finalize): add existence check of
Tcl commands before calling Tcl_GlobalEval().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-11 17:29:15 +00:00
nagai
4d41fb2215 * ext/tcltklib/tcltklib.c (ip_finalize): adhoc patch to avoid SEGV
when exit on Tcl/Tk8.3.x.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-11 11:13:43 +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
b12fcec321 * ext/tcltklib/tcltklib.c (lib_eventloop_ensure): mis-delete a timer
handler when exit from a recursive called eventloop
* ext/tk/lib/tk/timer.rb: new TkRTTimer class, which can works for a
  realtime operation
* ext/tk/sample/tkrttimer.rb: sample of TkRTTimer class
* ext/tk/lib/tk/textmark.rb: move  TkTextMark#+ and TkTextMark#- to
  TkText::IndexModMethods
* ext/tk/lib/tk/text.rb: improve TkTextMark#+ and TkTextMark#-, and
  add them to TkText::IndexModMethods module
* ext/tk/sample/tktextio.rb: add test part of "seek by text index
  modifiers"


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-10 10:14:13 +00:00
nagai
1ee1686497 * ext/tcltklib/tcltklib.c: fail to call TclTkLib.mainloop when $SAFE==4
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-06 15:03:42 +00:00
nagai
437fb244f4 * ext/tcltklib/tcltklib.c (ip_rbUpdateCommand, ip_rb_threadUpdateCommand):
get rid of warnings with Tcl/Tk 8.3 or former (backport from CVS HEAD).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-04 02:22:36 +00:00
nagai
874e86497c * ext/tcltklib/tcltklib.c (lib_eventloop_core): fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-02 08:19:04 +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
adfb4c3ba8 * ext/tcltklib/tcltklib.c: define TclTkLib::COMPILE_INFO and RELEASE_DATE
* ext/tcltklib/extconf.rb: ditto
* ext/tk/lib/tkutil.c: define Tk::RELEASE_DATE
* ext/tk/lib/tk.rb: define Tk::RELEASE_DATE


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-23 04:17:03 +00:00
nagai
ac3b12233b * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" when
the running script is '-e one-liner' or '-' (stdin).
* ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for stub libs
* ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor
  have a wrong parent class.
* ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and
  TkWarning2 --> TkWarningObj (old names are changed to alias names)
* ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command'
  option and hashes for configuration
* ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the button name
* ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==> get_value()
  and value=(val) ==> set_value(val).
* ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec
* ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton,
  TkOptionMenuButton = TkOptionMenubutton)
* ext/tk/lib/tk/event.rb: new method aliases (same as option keys of
  event_generate) for Event object
* ext/tk/lib/tk/font.rb: configinfo returns proper types of values
* ext/tk/lib/tk.rb: bind methods accept subst_args + block
* ext/tk/lib/tk/canvas.rb: ditto
* ext/tk/lib/tk/canvastag.rb: ditto
* ext/tk/lib/tk/frame.rb: ditto
* ext/tk/lib/tk/text.rb: ditto
* ext/tk/lib/tk/texttag.rb: ditto
* ext/tk/lib/tk/toplevel.rb: ditto
* ext/tk/lib/tkextlib/*: ditto and bug fix


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 18:14:15 +00:00
nagai
6025fed91d * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x or older
* ext/tk/lib/tkextlib/tile/style.rb: bug fix


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-09 18:35:52 +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
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
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
3464b6c755 * ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
* ext/tcltklib/tcltklib.c: store original 'exit' command
* ext/tk/tkutil.c: fix(?) SEGV


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-12 16:05:59 +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
ocean
3dc173c1e9 * ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
pointer conversion.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-10 11:22:31 +00:00
nagai
a4273db675 * 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/branches/ruby_1_8@6876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-09 05:03:21 +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
177fdc1f59 * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted, destroy its root widget
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-31 07:09:49 +00:00
nagai
c8fa16c815 * ext/tcltklib/tcltklib.c (del_root): fix SEGV
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-31 03:32:33 +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
d6f13c158d * ext/tcltklib/tcltklib.c(lib_fromUTF8_core): raise ArgumentError when
the unknown encoding name is given.
* ext/tcltklib/tcltklib.c(lib_toUTF8_core): ditto.
* ext/tk/lib/tk.rb(Tk::Encoding.encoding_convertfrom): bug fix.
* ext/tk/lib/tk.rb(Tk::Encoding.encoding_convertto): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-30 07:13:55 +00:00
nagai
1ac70e2f77 * ext/tk/, ext/tcltklib/: bug fix
* ext/tk/lib/tk.rb: better operation for SIGINT when processing callbacks.
* ext/tk/lib/tk/msgcat.rb: ditto.
* ext/tk/lib/tk/variable.rb: ditto.
* ext/tk/lib/tk/timer.rb: ditto.
* ext/tk/lib/tk/validation.rb: add Tk::ValidateConfigure.__def_validcmd()
  to define validatecommand methods easier
* ext/tk/lib/tk.rb (_genobj_for_tkwidget): support autoload Tk ext classes
* ext/tk/lib/tk/canvas.rb and so on: remove the parent widget type check
  for items (e.g. canvas items; depends on the class) to avoid some troubles
  on Tk extension widget class definition.
* ext/tk/lib/tkextlib/: add Iwidget and TkTable extension support
* ext/tk/sample/tkextlib/: add samples of Iwidget and TkTable


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-15 01:18:57 +00:00
nagai
b7a7c70c32 * ext/tk/lib/tcltklib : bug fix
* ext/tk/lib/tk : bug fix and add Tcl/Tk extension support libraries


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-01 09:38:48 +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
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