Commit graph

221 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
nagai
4d52e65787 * ext/tk/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/trunk@8755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-13 03:47:05 +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
2e3404c1bb * ext/tk/lib/tk.rb: fix typo on Tk.grid_propagate.
* ext/tk/lib/tk.rb: Tk.event_generate and TkWindow#event_generate
  accept TkEvent::Event object as context argument.
* ext/tk/lib/tk/event.rb: add TkEvent::Event#valid_fields and
  valid_for_generate to get field parameters of event_generate.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-24 03:29:24 +00:00
nagai
223798c50e * ext/tk/lib/tk/canvastag.rb: TkcGroup.new cannot include given items.
TkcGroup#exclude calls wrong method.
  Add alias TkcGroup#add [ruby-talk:146049].
* ext/tk/lib/tk/canvas.rb: TkCanvas#dtag and some subcommands of
  TkCanvas#addtag fail to treat a TkcTag argument.
* ext/tk/lib/tk/event.rb: add TkEvent::Event#generate to help to send
  current event to other widgets.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-23 07:57:39 +00:00
nagai
8cd944803e * ext/tk/lib/tk.rb: add Tk.getMultiple{Open|Save}File() which return
an Array of selected files.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-16 04:37:07 +00:00
nagai
082393fe39 * ext/tk/tk.rb: support "tk inactive" sub-command. [for Tcl/Tk8.5a3]
* ext/tk/tk/namespace.rb: support "namespace path" sub-command and
  'namespace ensemble' sub-command. [for Tcl/Tk8.5a3]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-15 09:30:54 +00:00
nagai
dc5a620aa0 * ext/tk/lib/multi-tk.rb: fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-06-03 05:08:40 +00:00
nagai
bd47024ab6 * ext/tk/lib/macpkg.rb: add PACKAGE_NAME information of Tcl/Tk Extension.
* ext/tk/lib/tk/msgcat.rb: ditto.
* ext/tk/lib/tk/winpkg.rb: ditto.
* ext/tk/lib/tkextlib/*: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-30 14:53:52 +00:00
nagai
87cad12ae8 * ext/tk/lib/tk.rb: add shortcut-methods of tk_call + tk_split_list
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-25 21:11:13 +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
357ce6cfe4 * ext/tk/lib/tk/timer.rb: fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-08 14:21:31 +00:00
nagai
9e985d3e58 * ext/tk/lib/tk.rb: update RELEASE_DATE
* ext/tk/lib/tk/image.rb: support to create TkImage object without
  creating a new image object on Tk.
* ext/tk/lib/tk/menu.rb: use TkCommandNames on create_self()
* ext/tk/lib/tk/root.rb: TkRoot.to_eval() returns '.'.
* ext/tk/lib/tk/text.rb: add methods to create a TkText::IndexString
  from (x, y) coords.
* ext/tk/lib/tkextlib/tile.rb: bug fix and update support status.
* ext/tk/lib/tkextlib/tile/*.rb: ditto.
* ext/tk/sample/tkextlib/tile: New demo.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-09 09:27:54 +00:00
ocean
5ddcd35cf1 * ext/tk/lib/tk.rb (TkComm#array2tk_list): accept enc-mode argument to
decide whether convert encoding of each element or not.

* ext/tk/lib/tk/variable.rb (TkVariable#value=): fail to convert the
  encoding of array elements when assign an array to an TkVariable
  object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-04 14:21:24 +00:00
nagai
21df665098 * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
* ext/tk/lib/tk/variable.rb: fix namespace trouble when autoloading
* ext/tk/lib/tk/palette.rb: define Tcl variable 'tkPalette' as global
* ext/tk/lib/tk/dialog.rb: use array2tk_list method when calling
  Tk.ip_eval.
* ext/tk/lib/tk/autoload.rb: add autoload entry 'TkDialogObj' and
  'TkWarningObj'
* ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: support TreeCtrl's cvs
  head.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-02 08:02:39 +00:00
nagai
4f8df7dcc4 * ext/tk/lib/tk.rb (TkWindow.initialize): accept 'without_creating'
option without 'widgetname' option to allow creating a widget object
  which is used as an argument of Tcl/Tk's widget allocation commands.
* ext/tk/lib/tk/image.rb (TkImage.initialize): accept 'imagename'
  option to create a image object by the given name.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-01 17:22:02 +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
334325f72a * ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
a class is available for a callback entry.
* ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
* ext/tk/lib/tk.rb (array2tk_list): change from private module method
  of TkComm to public module method.
* ext/tk/lib/tk.rb (cget): add check that slot argument is not empty string.
* ext/tk/lib/tk.rb (configinfo): ditto.
* ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
  is not empty string.
* ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
* ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
  cursor and cursor= method).
* ext/tk/lib/tk/font.rb: improve font treatment when the font name is
  empty string.
* ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure type.
* ext/tk/lib/tk/variable.rb: improve treatment of array-type tkvariable.
* ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
* ext/tk/lib/tkextlib/blt/*: bug fix.
* ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
  to call TreeCtrl commands for bindings.
* ext/tk/sample/tkextlib/blt/*: new sample scritps.
* ext/tk/sample/tkextlib/treectrl/*: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-26 13:58:11 +00:00
nagai
e58c2dc6a8 * ext/tk/lib/tk/timer.rb (TkRTTimer): forgot to reset the callback
time. So, 'continue' do all callbacks between 'stop' and 'continue'.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-14 03:23:01 +00:00
nagai
cde3bdf26f * ext/tk/lib/tk/timer.rb (TkRTTimer): correct calculation of offset
value. get a little better accuracy.
* ext/tk/sample/demos-en/widget: use a binding with no local variables
  when eval a sample script.
* ext/tk/sample/demos-en/bind.rb: ditto.
* ext/tk/sample/demos-en/tcolor: ditto.
* ext/tk/sample/demos-jp/widget: ditto.
* ext/tk/sample/demos-jp/bind.rb: ditto.
* ext/tk/sample/demos-jp/tcolor: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-13 15:19:16 +00:00
nagai
d2a9e77748 * ext/tk/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/trunk@8133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-10 10:13:30 +00:00
nagai
854f86e8ba * 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/trunk@8075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05 07:35:41 +00:00
nagai
3124427ccb * ext/tk/tcltklib.c: enforce thread-check and exception-handling to
avoid SEGV trouble.
* 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/trunk@8046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-02 07:06:52 +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
53c584d35d * 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/trunk@7667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-27 11:04:21 +00:00
nagai
532e34fcd2 * ext/tk/lib/tkextlib/blt.rb: add BLT extension support
* ext/tk/lib/tkextlib/blt/*.rb: ditto
* ext/tk/lib/tkextlib/blt/tile/*.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-23 16:23:30 +00:00
nagai
13fde676fe * 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/trunk@7640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-23 04:17:03 +00:00
nagai
cb2349d653 * ext/tk/lib/tk.rb: fix bug on setting up system encoding
* ext/tk/lib/tk/event.rb: fix error on require process
* ext/tk/lib/font.rb: fix abnormal termination error on Windows
* ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new()
  accepts event-sequence arguments
* ext/tk/lib/text.rb: fail to dump embedded images
* ext/tk/lib/text.rb: tag_nextrange and tag_prevrange returns wrong
  types of values
* ext/tk/lib/texttag.rb: nextrange and prevrange returns wrong types of values
* ext/tk/lib/text.rb: add TkText::IndexModMethods module and
  TkText::IndexString class to treat text index modifiers
* ext/tk/lib/texttag.rb: use TkText::IndexModMethods module
* ext/tk/lib/textmark.rb: ditto
* ext/tk/lib/textimage.rb: ditto
* ext/tk/lib/textwindow.rb: ditto
* ext/tk/lib/textimage.rb: wrong gravity of text mark for embedded image
* ext/tk/lib/textwindow.rb: wrong gravity of text mark for embedded window


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-17 07:31:51 +00:00
nagai
9e51ec666b * 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/trunk@7574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-16 07:13:14 +00:00
nagai
b9bdee95f1 * 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/trunk@7512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 18:14:15 +00:00
nagai
697908d0d4 * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing
returns proper object. "widget.option = val" returns val, and
  "widget.option(val)" returns self.
* ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument.
* ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and value=(val).
* ext/tk/lib/tk/spinbox.rb: callback substitution support on command option.
* ext/tk/sample/demos-en/widget: bug fix (wrong image height)
* ext/tk/sample/demos-jp/widget: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-02 16:59:02 +00:00
nagai
27c24b0f3b * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epath
* ext/tk/lib/tk/image.rb: bug fix
* ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only)
* ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-26 09:07:25 +00:00
nagai
47fa2caf2e * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES trick
* ext/tk/lib/tk.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-12 05:09:37 +00:00
nagai
c2ac862f1a * ext/tk/lib/tk.rb: bind-event methods accept multi substitution arguments.
* ext/tk/lib/tk/canvas.rb: ditto.
* ext/tk/lib/tk/canvastag.rb: ditto.
* ext/tk/lib/tk/text.rb: ditto.
* ext/tk/lib/tk/texttag.rb: ditto.
* ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.
* ext/tk/lib/tkextlib/tktable/tktable.rb: ditto.
* ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-07 14:53:02 +00:00
nagai
ff814d4c37 * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-05 07:07:39 +00:00
nagai
39c871c925 * ext/tk/lib/tk.rb: support to use different Tcl commands between
configure and configinfo
* ext/tk/lib/font.rb: ditto.
* ext/tk/lib/itemconfig.rb: support to use different Tcl commands
  between item_configure and item_configinfo
* ext/tk/lib/itemfont.rb: ditto.
* ext/tk/extconf.rb: install SUPPORT_STATUS
* ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-03 08:09:55 +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
046d4e7ee1 * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns
a Fixnum for 2nd element (it's pid) of the return value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-07 08:38:03 +00:00
nagai
fd6f4e20cc * ext/tk/lib/tk.rb: add Tk.errorInfo and Tk.errorCode
* ext/tk/lib/tkextlib/bwidget.rb: bug fix


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-06 16:08:45 +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
7cf8256075 * ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow [ruby-dev:24207]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-03 02:33:08 +00:00