とみたです。

Gtk::Editable の各種シグナルを扱えるようにしてみました。

--
とみたまさひろ <tommy / tmtm.org>


*** rbgtk.c.orig	Fri Dec 10 06:58:48 1999
--- rbgtk.c	Wed Dec 22 20:36:42 1999
***************
*** 529,534 ****
--- 529,584 ----
  	    return;
  	}
      }
+     if (rb_obj_is_kind_of(obj, gEditable)) {
+ 	if (strcmp(signame, "insert_text") == 0) {
+ 	    rb_ary_push(args, rb_str_new(GTK_VALUE_STRING(params[0]), GTK_VALUE_INT(params[1])));
+ 	    rb_ary_push(args, INT2NUM(*GTK_RETLOC_INT(params[2])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "delete_text") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[0])));
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "set_editable") == 0) {
+ 	    rb_ary_push(args, GTK_VALUE_BOOL(params[0])? Qtrue: Qfalse);
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "move_cursor") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[0])));
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "move_word") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[0])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "move_page") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[0])));
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "move_to_row") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "move_to_column") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "kill_char") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "kill_word") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+ 	if (strcmp(signame, "kill_line") == 0) {
+ 	    rb_ary_push(args, INT2NUM(GTK_VALUE_INT(params[1])));
+ 	    return;
+ 	}
+     }
      if (rb_obj_is_kind_of(obj, gEntry)) {
  	if (strcmp(signame, "insert_position") == 0) {
  	    rb_ary_push(args, INT2NUM(*GTK_RETLOC_INT(params[0])));