7 remove_buttons (GtkWidget *widget, GtkWidget *other_button)
9 gtk_widget_destroy (other_button);
10 gtk_widget_destroy (widget);
14 add_buttons (GtkWidget *widget, GtkWidget *box)
16 GtkWidget *add_button;
17 GtkWidget *remove_button;
19 add_button = gtk_button_new_with_mnemonic ("_Add");
20 gtk_box_pack_start (GTK_BOX (box), add_button, TRUE, TRUE, 0);
21 gtk_widget_show (add_button);
23 gtk_signal_connect (GTK_OBJECT (add_button), "clicked",
24 GTK_SIGNAL_FUNC (add_buttons),
27 remove_button = gtk_button_new_with_mnemonic ("_Remove");
28 gtk_box_pack_start (GTK_BOX (box), remove_button, TRUE, TRUE, 0);
29 gtk_widget_show (remove_button);
31 gtk_signal_connect (GTK_OBJECT (remove_button), "clicked",
32 GTK_SIGNAL_FUNC (remove_buttons),
37 main (int argc, char *argv[])
45 gtk_init (&argc, &argv);
49 fprintf (stderr, "Usage: testsocket_child WINDOW_ID\n");
53 xid = strtol (argv[1], NULL, 0);
56 fprintf (stderr, "Invalid window id '%s'\n", argv[1]);
60 window = gtk_plug_new (xid);
61 gtk_signal_connect (GTK_OBJECT (window), "destroy",
62 (GtkSignalFunc) gtk_exit, NULL);
63 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
65 hbox = gtk_hbox_new (FALSE, 0);
66 gtk_container_add (GTK_CONTAINER (window), hbox);
67 gtk_widget_show (hbox);
69 entry = gtk_entry_new ();
70 gtk_box_pack_start (GTK_BOX (hbox), entry, TRUE, TRUE, 0);
71 gtk_widget_show (entry);
73 button = gtk_button_new_with_mnemonic ("_Close");
74 gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0);
75 gtk_widget_show (button);
77 gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
78 GTK_SIGNAL_FUNC (gtk_widget_destroy),
81 add_buttons (NULL, hbox);
83 gtk_widget_show (window);