作るぞ ギコ猫アプレット (437レス)
上下前次1-新
抽出解除 レス栞
174(2): 2001/08/10(金)11:19 AAS
172>> gtkcontainer.c(gtk+1.2.10)より抜粋 (708行付近)
void
gtk_container_add (GtkContainer *container,
GtkWidget *widget)
{
g_return_if_fail (container != NULL);
g_return_if_fail (GTK_IS_CONTAINER (container));
g_return_if_fail (widget != NULL);
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (widget->parent == NULL);
省5
175(2): gchar ねむいー [age] 2001/08/10(金)22:07 AAS
>>173さん
もう恐がりませんです。 ボリューム下げても無駄だったのかな。笑
>>174さん
いや、そういう話です。
gtk_container_add関数内のgtk_signal_emitでシグナルを発行していますが、
何の関数が呼ばれているんでしょうか?
サブクラスで関数のオーバーライドもされていないし、gtk_container_class_initで
それぞれgtk_container_add_unimplemented / gtk_container_remove_unimplementedが呼ばれるように
設定されていると思うのですが。
私が根本的に勘違いしているんでしょうか?
省15
176: 174 2001/08/11(土)09:31 AAS
>>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;
省4
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.033s