int main (int argc, char **argv) { GtkWidget *window; GtkWidget *camera; gst_init (&argc, &argv); bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); if (!cheese_gtk_init (&argc, &argv)) return EXIT_FAILURE; window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_default_size (GTK_WINDOW (window), 400, 300); g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (delete_callback), NULL); camera = cheese_widget_new (); gtk_container_add (GTK_CONTAINER (window), camera); gtk_widget_show_all (window); gtk_main (); return EXIT_SUCCESS; }
static void cheese_avatar_widget_init (CheeseAvatarWidget *widget) { CheeseAvatarWidgetPrivate *priv; GtkWidget *frame; GtkWidget *image; priv = cheese_avatar_widget_get_instance_private (widget); priv->flash = cheese_flash_new (GTK_WIDGET (widget)); priv->notebook = gtk_notebook_new (); g_object_set(G_OBJECT (priv->notebook), "margin", 12, NULL); gtk_notebook_set_show_border (GTK_NOTEBOOK (priv->notebook), FALSE); gtk_notebook_set_show_tabs (GTK_NOTEBOOK (priv->notebook), FALSE); gtk_container_add (GTK_CONTAINER (widget), priv->notebook); /* Camera tab */ priv->camera = cheese_widget_new (); g_signal_connect (G_OBJECT (priv->camera), "notify::state", G_CALLBACK (state_change_cb), widget); image = gtk_image_new_from_icon_name ("camera-photo-symbolic", GTK_ICON_SIZE_SMALL_TOOLBAR); priv->take_button = gtk_button_new (); gtk_button_set_image (GTK_BUTTON (priv->take_button), image); g_signal_connect (G_OBJECT (priv->take_button), "clicked", G_CALLBACK (take_button_clicked_cb), widget); gtk_widget_set_sensitive (priv->take_button, FALSE); gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), create_page (priv->camera, priv->take_button), gtk_label_new ("webcam")); /* Image tab */ priv->image = um_crop_area_new (); frame = gtk_frame_new (NULL); gtk_container_add (GTK_CONTAINER (frame), priv->image); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN); priv->take_again_button = gtk_button_new_with_mnemonic (_("_Take Another Picture")); g_signal_connect (G_OBJECT (priv->take_again_button), "clicked", G_CALLBACK (take_again_button_clicked_cb), widget); gtk_widget_set_sensitive (priv->take_again_button, FALSE); gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), create_page (frame, priv->take_again_button), gtk_label_new ("image")); priv->sizegroup = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL); gtk_size_group_add_widget (priv->sizegroup, priv->take_button); gtk_size_group_add_widget (priv->sizegroup, priv->take_again_button); gtk_widget_show_all (GTK_WIDGET (widget)); }