From: Christian Surlykke Date: 2007-03-22T01:09:35+09:00 Subject: Problem with Tk::Tile::Dialog#client_frame Hi I'm trying to write a gui program using Ruby and Tk/Tile. I'd like to do something like: require 'tk' require 'tkextlib/tile' d = Tk::Tile::Dialog.new(:type=>'okcancel', :message=>'Enter name:') Tk::Tile::Entry.new(d.client_frame).pack d.show - but I get: RuntimeError: wrong # args: should be "::ttk::dialog::clientframe dlg" from /usr/local/lib/ruby/1.8/tk.rb:1694:in `_invoke_without_enc' from /usr/local/lib/ruby/1.8/tk.rb:1694:in `_ip_invoke_core' from /usr/local/lib/ruby/1.8/tk.rb:1730:in `_tk_call_core' from /usr/local/lib/ruby/1.8/tk.rb:1758:in `tk_call_without_enc' from /usr/local/lib/ruby/1.8/tkextlib/tile/dialog.rb:54:in `client_frame' It seems that Tk::Tile::Dialog#client_frame launches an incorrect command against tcl. It works at the Tcl/Tk level. This script (which I've constructed with a considerable effort, as I don't speak tcl): package require tile ttk::dialog .dlg -type okcancel -message "Enter name:" set cf [ttk::dialog::clientframe .dlg] ttk::entry $cf.entry pack $cf.entry does what I want. (Sorry for posting tcl on this list :-)) Could it be a version problem? I'm running ruby 1.8.6, Tcl8.5a5, Tk8.5a5, Tile-0.7.8. All compiled from sources on a debian unstable box. br. Christian Surlykke