01/08/11 09:31
>>175さん
gtk_signal_emit (GTK_OBJECT (container), container_signals[ADD], widget);
で、containerに対してwidgetをADDするsignalをemitしているが、
gtk_container_class_init (GtkContainerClass *class)で
class->add = gtk_container_add_unimplemented;
となっていて、"なんじゃこりゃ?"状態ってことですよね。
そこで、gtkディレクトリで
$ grep "container_class->add" *.c
なんてすると、
gtkbin.c: container_class->add = gtk_bin_add;
gtkbox.c: container_class->add = gtk_box_add;
(以下略)
のようにそれぞれのwigetがオーバーライドしています。
ってことで、いかがでしょう?