Commit graph

221 commits

Author SHA1 Message Date
nagai
c59f1e6c90 * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
* ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
* ext/tk/lib/menu.rb: typo bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-19 07:43:54 +00:00
nagai
bfab094512 * 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/trunk@6721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-30 07:13:55 +00:00
nagai
92e7fccf41 * for backward compatibility (see [ruby-talk:107510], [ruby-talk:107647])
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-28 05:58:49 +00:00
nagai
108db34fa3 * ext/tk/lib/tk.rb(module TkObjecct): extend TkCore module
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-16 02:12:58 +00:00
nagai
13d4e3b5cd * ext/tk/sample/tkextlib/tktable/spreadsheet.rb: add a new sample
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-15 04:49:01 +00:00
nagai
ce1b23b7a5 * 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/trunk@6630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-15 01:18:57 +00:00
nagai
e55330c9c4 * 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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-09 19:29:29 +00:00
nagai
afcfca607e * ext/tk/lib : bug fix
* ext/tk/lib/tkextlib/itcl : add [incr Tcl] support
* ext/tk/lib/tkextlib/itk  : add [incr Tk] support
* ext/tk/lib/tkextlib/iwidgets : midway point of [incr Widgets] support
* ext/tk/sample/tkextlib/iwidgets : very simple examples of [incr Widgets]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-08 16:50:07 +00:00
nagai
d8465ff9ab * 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/trunk@6586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-06 09:42:12 +00:00
nagai
ffcedd7950 * 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/trunk@6559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-01 09:38:48 +00:00
nagai
f895f94cce * ext/tk/lib/tk.rb: bug fix (TkWindow#grab)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-15 03:12:40 +00:00
nagai
c0271cadd7 * 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/trunk@6454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-12 15:25:49 +00:00
nagai
56761e29f6 * ext/tk/lib/tk.rb: add Tk.appsend_deny and improve Tk.rb_appsend
* 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-21 20:45:27 +00:00
nagai
3011f45158 * ext/tk/lib/tk.rb: change permition of TkObject#tk_send from private to public
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6362 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-19 02:10:02 +00:00
nagai
4c4631c2da * renewal Ruby/Tk
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-01 16:09:54 +00:00
nagai
82482f67e2 * ext/tk/lib/tk.rb: en-bugged at last commit (Feb 11 23:24:22 2004)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-13 05:46:49 +00:00
nobu
6531904a1c * ext/tk/lib/tk.rb (TkComm::tk_split_list): suppress a warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-12 00:56:24 +00:00
nagai
6283babd21 * ext/tk/lib/tk.rb: properly treat a Tcl/Tk's string with escaping
special characters.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-11 14:31:33 +00:00
nagai
cfcebb7e8f * ext/tk/lib/tk.rb: use $0 as the default application class name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-13 07:52:03 +00:00
nagai
c24349e32d * ext/tk/lib/tk.rb: use epath for embedded windows of TkPanedWindow.
* ext/tk/lib/tktext.rb: use epath for embedded windows.
* ext/tk/lib/tkcanvas.rb: use epath for window items.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-07 05:28:53 +00:00
nagai
342aba0b84 * ext/tk/lib/tk.rb: add new methods (TkScrollbar#assign, assign_list)
* ext/tk/sample/tkmultilistframe.rb: use TkScrollbar#assign method


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-20 15:15:51 +00:00
nagai
dcd30a1236 * condition bug of if statement on {pack,grid}_propagate methods
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-16 04:27:15 +00:00
nagai
edc03a2912 * overrided instance methods, which are private methods on the super
class, are changed to 'private'


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-09 14:38:15 +00:00
nagai
a7c382223c * 'format'==>'Kernel.format' (avoid override trouble)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-03 04:55:07 +00:00
nagai
53dd83eebd * ext/tk/lib/tk.rb: bug fix [ruby-talk:86746]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 08:41:15 +00:00
nagai
615a54e77d * ext/tk/lib/tk.rb: add Tk.grab_release and fix bug of TkComposite
* ext/tk/lib/tkafter.rb: bug fix
* ext/tk/sample/tkcombobox.rb: new sample script
* ext/tcltklib/tcltklib.c: add native thread check


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-22 13:52:48 +00:00
nagai
cf971d47b9 * ext/tk/lib/tkentry.rb: fix the encoding trouble of percent
substitutions on validatecommand option of TkEntry widget
* ext/tk/lib/tk.rb: fix bug on {pack|grid}_propagate() method


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-21 07:49:11 +00:00
nagai
906d408e7c * ext/tcltklib/tcltklib.c: fix (en-bugged at 2003/11/07)
* ext/tk/lib/tkdialog.rb: TkDialog.new accepts the parent widget [ruby-talk:85066]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-14 04:25:11 +00:00
nagai
c90fab98a2 * ext/tk/lib/tk.rb,multi-tk.rb: stop freezing some classes
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-12 21:11:40 +00:00
nagai
0fd9439894 * ext/tk/lib/tk.rb: raise an exception when creating TkWindow
object, because TkWindow class is an abstract class.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-11 01:45:06 +00:00
nagai
ea03c3fc2c configure.in, eval.c, signal.c: : add '--with-pthread-ext' option
to fix the pthread trouble on 'tcltklib'
ext/tcltklib/README.1st: add the description of '--with-pthread-ext'
ext/tk/lib/tktext.rb : add TkText#text_copy, text_cut, text_paste to
        support Tcl/Tk8.4's tk_textCopy, tk_textCut, tk_textPaste
ext/tk/lib/tk.rb : add TkMenu#set_focus support Tcl/Tk's tk_menuSetFocus


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-05 14:00:11 +00:00
nagai
90e087b697 add TkRoot.destroy
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-25 22:36:50 +00:00
nagai
477f730aa4 bug fix
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-21 04:46:21 +00:00
nagai
b860656cb0 add some documents
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-17 07:59:32 +00:00
matz
8ef5da3be1 consistent parentheses in assignment RHS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-16 17:47:19 +00:00
nagai
653ad6fd4b (bug fix) instance variable @frame was used without initializing on
TkComposite module


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-16 15:14:41 +00:00
nagai
6559430fb7 If $DEBUG == true and some exception is caused in a callback
operation, Ruby/Tk shows a (verbose) backtrace information on
the callback process.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-16 14:53:47 +00:00
nagai
98a3a9db97 Add Tk::EncodedString and Tk::UTF8_String class to support characters
using the \uXXXX escape to the UNICODE string.
sample/{demos-en,demos-jp}/unicodeout.rb are samples of Tk::UTF8_String.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-16 07:45:51 +00:00
nagai
b4337be29f ext/tk/lib/tk.rb:
* fixed trouble on auto-load Tcl commands (enbug on the last commit).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-14 18:54:21 +00:00
nagai
382b4ae9a3 ext/tcltklib/tcltklib.c:
* replace Tcl/Tk's vwait and tkwait to switch on threads smoothly and
   avoid seg-fault.
 * add TclTkIp._thread_vwait and _thread_tkwait for waiting on a thread.
   ( Because Tcl/Tk's vwait and tkwait command wait on a eventloop. )
ext/tk/lib/multi-tk.rb:
 * support TclTkIp._thread_vwait and _thread_tkwait
ext/tk/lib/tk.rb:
 * now, TkVariable#wait has 2 arguments.
   If 1st argument is true, waits on a thread. If false, waits on an eventloop.
   If 2nd argument is true, checks existence of rootwidgets. If false, doesn't.
   Default is wait(true, false).
 * add TkVariable#tkwait(arg) which is equal to TkVariable#wait(arg, true)
 * wait_visibility and wait_destroy have an argument for waiting on a
   thread or an eventloop.
 * improve of accessing Tcl/Tk's special variables
ext/tk/lib/tkafter.rb:
 * support 'wait on a thread' and 'wait on an eventloop'


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-14 15:25:45 +00:00
nagai
865ff7fb4f * tcltklib.c (lib_mainloop_core): fixed signal-trap bug
* multi-tk.rb, tk.rb, tkafter.rb, tkcanvas.rb, tkfont.rb, tktext.rb,
  tkvirtevent.rb : Ruby/Tk works at $SAFE == 4


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-07 07:10:44 +00:00
nagai
9388ed284d * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
* ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb} :
  bug fix and improvement of font control


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-02 05:04:30 +00:00
matz
b6feeb2945 * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
Dave Butcher.

* eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
  Decoux in [ruby-talk:80623]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-01 09:02:43 +00:00
nagai
24ff3f4448 * doc/ChangeLog-1.8.0: add changes of Ruby/Tk
* ext/tcltklib/tcltklib.c : some methods have no effect if on slave-IP
* ext/tcltklib/tcltklib.c : can create a interpreter without Tk
* ext/tcltklib/tcltklib.c : bug fix on handling exceptions
* ext/tcltklib/MANUAL.euc : modify
* ext/tk/lib/tk.rb : freeze some core modules
* ext/tk/lib/multi-tk.rb : more secure
* ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
  Tk's list
* ext/tk/lib/tk.rb: improve accessibility of TkVariable object
* ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
  ext/tk/lib/tktext.rb : fix bug of font handling
* ext/tk/lib/tkfont.rb TkFont.new() accepts compound fonts
* process.c: bug fix
* process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
* process.c: deny handling IDs during evaluating the block given to
  the Process::{UID,GID}.switch method


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-29 08:34:14 +00:00
nagai
ebe22aafa2 * typo bug
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-03 10:53:09 +00:00
nagai
6c288fe84a * sorry. fixed commit miss
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-03 06:00:54 +00:00
nagai
f820839f17 * add or modify some widget demo scripts
* (bug fix) TkGrid failed to treat RELATIVE PLACEMENT


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-02 21:39:23 +00:00
matz
2c225e77e0 * numeric.c (flo_to_s): get rid of buffer overflow.
* io.c (appendline): clearerr(3) before raising exception, since
  exception may be captured by rescue. [ruby-talk:77794]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-02 18:05:02 +00:00
nagai
6277a66deb * (bug fix) forgot to entry a widget class name of 'labelframe' widget
* add demo-scripts to the JP/EN widget demos


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-02 09:58:13 +00:00
nagai
4c3328f547 * (bug fix) TkEntry#delete
* (bug fix) some widget demos
* support <TkVariable object> == <Symbol>
  ( "coerce TkVariable" add to the TODO list :-) )
* freeze some object for security reason


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-08-02 05:04:30 +00:00