Commit graph

20 commits

Author SHA1 Message Date
nagai
41b74c6e20 * ext/tk/extconf.rb: New strategy for searching Tcl/Tk libraries.
* ext/tk/*: Support new features of Tcl/Tk8.6b1 and minor bug fixes.
     ( [KNOWN BUG] Ruby/Tk on Ruby 1.9 will not work on Cygwin. )
* ext/tk/*: Unify sources between Ruby 1.8 & 1.9.
            Improve default_widget_set handling.
* ext/tk/*: Multi-TkInterpreter (multi-tk.rb) works on Ruby 1.8 & 1.9.
     ( [KNOWN BUG] On Ruby 1.8, join to a long term Thread on Tk
       callbacks may freeze. On Ruby 1.9, cannot create a second 
       master interpreter (creating slaves are OK); supported master
       interpreter is the default master interpreter only. )
* ext/tk/lib/tkextlib/*: Update supported versions of Tk extensions.
         Tcllib 1.8/Tklib 0.4.1  ==>  Tcllib 1.11.1/Tklib 0.5
         BWidgets 1.7            ==>  BWidgets 1.8
         TkTable 2.9             ==>  TkTable 2.10
         TkTreeCtrl 2005-12-02   ==>  TkTreeCtrl 2.2.9
         Tile 0.8.0/8.5.1        ==>  Tile 0.8.3/8.6b1
         IncrTcl 2005-02-14      ==>  IncrTcl 2008-12-15
         TclX 2005-02-07         ==>  TclX 2008-12-15
         Trofs 0.4.3             ==>  Trofs 0.4.4


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@24064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-12 23:09:52 +00:00
nagai
ba75e8cd29 * ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
pass the given block to methods of Tk::Wm module.

* ext/tk/lib/tk/grid.rb: lack of module-method definitions.

* ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.

* ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8) 
  characters for headings.

* ext/tk/tcltklib.c: maybe a little more stable about @encoding value 
  of TclTkIp object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-09 14:33:25 +00:00
nagai
8f5ddf723f * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
ext/tk/sample/ttk_wrapper.rb: improve treating and control themes. 
  add Tk::Tile.themes and Tk::Tile.set_theme(theme).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-03 13:52:47 +00:00
nagai
59e126383c * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
ext/tk/sample/tkextlib/tile/demo.rb: previous patch is not complete.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-11 03:45:25 +00:00
nagai
2697c924a9 * ext/tk/lib/tkextlib/tile.rb:
__define_LoadImages_proc_for_compatibility__! do nothing when the 
  Tcl command exists.

* ext/tk/lib/tkextlib/tile/style.rb:
  __define_wrapper_proc_for_compatibility__! do nothing when the Tcl
  command exists.

* ext/tk/sample/tkextlib/tile/demo.rb: don't create 'step' theme if 
  it already exists.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-11 01:23:38 +00:00
nagai
aff4ce9c77 * ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
* ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets' 
  instate/state/identify method to avoid the conflict with standard
  widget options. Those methods are renamed to ttk_instate/ttk_state/
  ttk_identify (tile_instate/tile_state/tile_identify are available 
  too). Although I don't recommend, if you realy need old methods, 
  please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before 
  "require 'tkextlib/tile'".

* ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
  is obsolete. It outputs warning. To control default widget set, 
  use "Tk.default_widget_set = :Ttk".

* ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and 
  __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defind 
  as module methods of TkConfigMethod. It may help users to wrap old 
  Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
  Ttk widgets don't have some options of standard widgets which are 
  control the view of widgets. When set ignore-mode true, configure 
  method tries to ignoure such unknown options with no exception. 
  Of course, it may raise other troubles on the GUI design. 
  So, those are a little danger methods. 

* ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ 
  method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method 
  are defind as module methods of TkItemConfigMethod as the same 
  purpose as TkConfigMethod's ones.

* ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for 
  wrapping old Ruby/Tk scripts (which use standard widgets) to use 
  Ttk (Tile) widgets as default.

* ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state 
  method instead of instate/state method.

* ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
  ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's  
  are replaced to "instance_exec(self)".

* ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not 
  a character code on Ruby1.9).

* ext/tk/lib/tk/variable.rb: support new style of operation argument 
  on Tcl/Tk's 'trace' command for variables. 

* ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix

* ext/tk/sammple/demos-jp/textpeer.rb, 
  ext/tk/sammple/demos-en/textpeer.rb: new widget demo.

* ext/tk/tcltklib.c: decrase SEGV troubles (probably)

* ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9

* ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)

* ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command 
  to make Tcl/Tk theme sources (based on different version of Tile 
  extension) available. 
  (Tk::Tile::__define_LoadImages_proc_for_comaptibility__)

* ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
  (Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets 
  as toplevel widgets.

* ext/tk/lib/tkextlib/tile/style.rb: ditto.
  (Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)

* ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get 
  properties as a hash. metrics_hash method returns a boolean value 
  for 'fixed' option. But metrics method returns numeric value 
  (0 or 1) for 'fixed' option, because of backward compatibility. 

* ext/tk/lib/tk/timer.rb: somtimes fail to set callback procedure.

* ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep 
  doesn't block the eventloop. It will be better to use the method 
  in event callbacks.

* ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-29 05:25:45 +00:00
nagai
088f21e259 * ext/tk/lib/tkextlib/tile.rb, lib/tkextlib/tile/* : support Tile 0.7.6.
* ext/tk/lib/tkextlib/SUPPORT_STATUS: [ruby-talk:211939] check links
  of extensions.
* ext/tk/lib/tkextlib/blt/container.rb: define instance methods properly.
* ext/tk/lib/tkextlib/tile/tcombobox.rb: bug fix [ruby-talk:213003].
* ext/tk/lib/tkextlib/tile/tnotebook.rb: ditto.
* ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
* ext/tk/lib/tkextlib/tile/sizegrip.rb: [new] add 'ttk::sizegrip' widget.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@11081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-04 09:52:54 +00:00
nagai
40b89d6cf1 * ext/tk/lib/tkextlib/tile.rb: bug fix (Tk::Tile::USE_TTK_NAMESPACE
is not defined).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-11-21 17:34:12 +00:00
nagai
a3d7c3b809 * ext/tcltklib/extconf.rb: improbe messages [ruby-core:06325].
* ext/tk/lib/tk.rb, ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/entry.rb,
  ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/image.rb,
  ext/tk/lib/tk/itemconfig.rb, ext/tk/lib/tk/labelframe.rb,
  ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/menu.rb,
  ext/tk/lib/tk/radiobutton.rb, ext/tk/lib/tk/scale.rb,
  ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tk/text.rb,
  ext/tk/lib/tk/toplevel.rb: improve conversion of option values.
* ext/tk/lib/tkextlib/*: ditto.
* ext/tk/lib/tkextlib/*: update to support ActiveTcl8.4.11.2.
* ext/tk/lib/tkextlib/trofs/*: support Trofs 0.4.3.
* ext/tk/lib/tkextlib/tile/*: support Tile 0.7.2.
* ext/tk/lib/tkextlib/vu/*: support vu 2.3.0.
* ext/tk/lib/tkextlib/tcllib/*: support Tcllib 1.8 (Tklib 0.3).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-22 22:16:33 +00:00
ocean
4a97cf6eab reverted. [ruby-dev:26726]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 05:04:53 +00:00
ocean
bdb21472f1 * 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/branches/ruby_1_8@8906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04 04:48:13 +00:00
ocean
e5eff1ef13 * 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/branches/ruby_1_8@8881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-01 10:25:51 +00:00
nagai
66b1af33af * 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/branches/ruby_1_8@8537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-05-30 14:53:52 +00:00
nagai
06adf6bd7e * 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/branches/ruby_1_8@8291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-09 09:27:54 +00:00
nagai
26dd1065f4 * ext/tk/lib/tkextlib/tile.rb: lack of "autoload TProgressbar"
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05 07:46:44 +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
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
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
eb6571a860 * ext/tk/lib : improve framework of developping Tcl/Tk extension wrappers
* BWidget extension support on Ruby/Tk


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-06 09:42:12 +00:00
(no author)
18aad3084f This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-01 09:38:53 +00:00