From: Masao M. <mu...@hi...> - 2002-07-28 16:26:25
|
Hi, On Sun, 28 Jul 2002 17:01:34 +0200 (CEST) "Kristof Bastiaensen" <kr...@vl...> wrote: > Hello. > This is an example taken from the gtk - user manual. > There it uses the function gtk_block_signal_handler_by_func. > This is not available in the ruby-language bindings, so I use > a global variable. Hmm, I could not find gtk_block_signal_handler_by_func. #and I don't know the example what you see. Is it gtk_signal_connect_by_func? > When a insert text, the text gets there, but the cursor doesn't > move. I think this is Ruby/GTK's problem, but I don't have any ideas now. > Is there a way to make this work, or do I have change to the > c-language? I wrote a script same as your code once. It works fine for ASCII charcter, but it doesn't work with 2-byte character(like Kanji). --- require 'gtk' entry = Gtk::Entry.new handler_id = entry.signal_connect_after("insert_text") do |widget, text, pos| entry.signal_handler_block(handler_id) entry.delete_text(pos - 1, pos) entry.insert_text(t, pos) entry.position = pos + text.size entry.signal_handler_unblock(handler_id) end window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL) window.add(entry) window.show_all Gtk.main ---- Cheers, -- .:% Masao Mutoh<mu...@hi...> |