summaryrefslogtreecommitdiff
path: root/ext/tk/lib/tk/root.rb
AgeCommit message (Collapse)Author
2009-07-12* ext/tk/extconf.rb: New strategy for searching Tcl/Tk libraries.nagai
* 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/trunk@24063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06* {ext,lib,test}/**/*.rb: removed trailing spaces.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-29* ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.nagai
* 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/trunk@15848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-28* ext/tk/lib/tk.rb: forgot to update RELEASE_DATEnagai
* ext/tk/lib/tk.rb, ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: remove adhoc check of Ruby's features (use existence of some classes instead of comparing with RUBY_VERSION) * ext/tk/lib/tk/root.rb, ext/tk/lib/tk/autoload.rb: make TkRoot (Tk::Root) unswitchable * ext/tk/lib/multi-tk.rb: partial bug fix (still not work!!) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-27* ext/tk/lib/tk.rb, ext/tk/lib/*: make default widget set nagai
switchable between Tk (standard Tcl/Tk widget set) and Ttk (Tile). Initial default widget set is Tk. Now, toplevel widget classes are removed and defined as aliases. For example, "TkButton" is an alias of the "Tk::Button" class. Those aliases are replaced when switching default widget set. "Tk.default_widget_set=" is the method for switching default widget set. "Tk.default_widget_set = :Ttk" defines Ttk (Tile) widget set as default. It means that "TkButton" denotes "Tk::Tile::Button" class. And then, "TkButton.new" creates a Tk::Tile::Button widget. Of course, you can back to use standard Tk widgets as the default widget set by calling "Tk.default_widget_set = :Tk", whenever you want. Based on thie feature, you can use Ttk widget styling engine on your old Ruby/Tk application without modifying its source, if you don'tuse widget options unsupported on Ttk widgets (At first, call "Tk.default_widget_set = :Ttk", and next load and run your application). This is one step for supporting Tcl/Tk8.5 features. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21Ruby/Tk :: provisional support on Ruby-VM and Tcl/Tk8.5.nagai
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-04* ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.nagai
* 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-04-09* ext/tk/lib/tk.rb: update RELEASE_DATEnagai
* 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
2004-10-11* ext/tk/lib/tk/*: untabifynagai
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-12* ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) supportnagai
* 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/trunk@6454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-21* ext/tk/lib/tk.rb: add Tk.appsend_deny and improve Tk.rb_appsendnagai
* 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-01* renewal Ruby/Tknagai
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e