int main (int argc, char *argv[]) { GtkWidget *window; GtkWidget *darea; GError *error; int i; rgba_t bgcolor1, bgcolor2; error = NULL; gtk_init_with_args (&argc, &argv, "circlesaver", options, NULL, &error); window = gs_theme_window_new(); darea = gtk_drawing_area_new(); gtk_container_add(GTK_CONTAINER (window), darea); g_signal_connect(darea, "expose-event", G_CALLBACK (on_expose_event), NULL); g_signal_connect(window, "destroy", G_CALLBACK (gtk_main_quit), NULL); for (i = 0; i < NUM_CIRCLES; ++i) { circles[i] = gen_circle(i); } bgcolor1 = color(0xFF000000); bgcolor2 = color(0xFF705391); bgpattern = cairo_pattern_create_linear(100.5, 0.0, 100.5, 500.0); cairo_pattern_add_color_stop_rgb(bgpattern, 0.0, bgcolor1.r, bgcolor1.g, bgcolor1.b); cairo_pattern_add_color_stop_rgb(bgpattern, 1.0, bgcolor2.r, bgcolor2.g, bgcolor2.b); g_timeout_add_full (G_PRIORITY_HIGH, UPDATE_FREQ, timeout_callback, darea, NULL); //g_timeout_add (UPDATE_FREQ, timeout_callback, darea); if ((geometry == NULL) || !gtk_window_parse_geometry (GTK_WINDOW (window), geometry)) gtk_window_set_default_size (GTK_WINDOW (window), 640, 480); gtk_widget_show_all(window); gtk_main(); cairo_pattern_destroy(bgpattern); return 0; }
int main (int argc, char **argv) { GSThemeEngine *engine; GtkWidget *window; GError *error; bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); error = NULL; if (!gtk_init_with_args (&argc, &argv, NULL, NULL, NULL, &error)) { g_printerr (_("%s. See --help for usage information.\n"), error->message); g_error_free (error); exit (1); } window = gs_theme_window_new (); g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (gtk_main_quit), NULL); g_set_prgname ("popsquares"); engine = g_object_new (GSTE_TYPE_POPSQUARES, NULL); gtk_container_add (GTK_CONTAINER (window), GTK_WIDGET (engine)); gtk_widget_show (GTK_WIDGET (engine)); gtk_window_set_default_size (GTK_WINDOW (window), 640, 480); gtk_widget_show (window); gtk_main (); return 0; }
int main (int argc, char **argv) { GSThemeEngine *engine; GtkWidget *window; GError *error; gboolean ret; char *location = NULL; char *background_color = NULL; gboolean sort_images = FALSE; gboolean no_stretch = FALSE; GOptionEntry entries [] = { { "location", 0, 0, G_OPTION_ARG_STRING, &location, N_("Location to get images from"), N_("PATH") }, { "background-color", 0, 0, G_OPTION_ARG_STRING, &background_color, N_("Color to use for images background"), N_("\"#rrggbb\"") }, { "sort-images", 0, 0, G_OPTION_ARG_NONE, &sort_images, N_("Do not randomize pictures from location"), NULL }, { "no-stretch", 0, 0, G_OPTION_ARG_NONE, &no_stretch, N_("Do not try to stretch images on screen"), NULL }, { NULL } }; bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); error = NULL; g_thread_init (NULL); ret = gtk_init_with_args (&argc, &argv, NULL, entries, NULL, &error); if (! ret) { g_message ("%s", error->message); g_error_free (error); exit (1); } g_chdir (g_get_home_dir ()); g_set_prgname ("slideshow"); window = gs_theme_window_new (); g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (gtk_main_quit), NULL); engine = g_object_new (GSTE_TYPE_SLIDESHOW, NULL); if (location == NULL) { location = xdg_user_dir_lookup ("PICTURES"); if (location == NULL || strcmp (location, "/tmp") == 0 || strcmp (location, g_get_home_dir ()) == 0) { free (location); location = g_build_filename (g_get_home_dir (), "Pictures", NULL); } } if (location != NULL) { g_object_set (engine, "images-location", location, NULL); } if (sort_images) { g_object_set (engine, "sort-images", sort_images, NULL); } if (background_color != NULL) { g_object_set (engine, "background-color", background_color, NULL); } if (no_stretch) { g_object_set (engine, "no-stretch", no_stretch, NULL); } gtk_container_add (GTK_CONTAINER (window), GTK_WIDGET (engine)); gtk_widget_show (GTK_WIDGET (engine)); gtk_window_set_default_size (GTK_WINDOW (window), 640, 480); gtk_widget_show (window); gtk_main (); return 0; }
int main (int argc, char **argv) { state *st; GtkWidget *window; GtkWidget *drawing_area; GError *error = NULL; DBusError dbus_error; gtk_set_locale(); gtk_init_with_args(&argc, &argv, parameter_string, options, "gnome-screensaver", &error); if (error != NULL) { g_printerr ("%s. See --help for usage information.\n", error->message); g_error_free (error); return EX_SOFTWARE; } copy_gifs(); get_time_str(); window = gs_theme_window_new(); drawing_area = gtk_drawing_area_new(); st = clock_init(window, drawing_area); init_weather(st); gtk_widget_show(drawing_area); gtk_container_add(GTK_CONTAINER (window), drawing_area); gtk_widget_show(window); loop = g_main_loop_new (NULL, FALSE); dbus_error_init (&dbus_error); bus = dbus_bus_get (DBUS_BUS_SESSION, &dbus_error); if (!bus) { g_warning ("Failed to connect to the D-BUS daemon: %s", dbus_error.message); dbus_error_free (&dbus_error); return 1; } dbus_connection_setup_with_g_main (bus, NULL); /* listening to messages from all objects as no path is specified */ dbus_bus_add_match (bus, "type='signal',interface='org.freedesktop.MediaPlayer'", &dbus_error); dbus_bus_add_match (bus, "type='signal',interface='org.freedesktop.DBus.Properties'", &dbus_error); dbus_connection_add_filter (bus, signal_filter, loop, NULL); g_signal_connect(G_OBJECT (window), "delete-event", GTK_SIGNAL_FUNC(quit_app), loop); g_signal_connect(GTK_OBJECT (drawing_area), "configure_event", GTK_SIGNAL_FUNC (configure_event), st); g_signal_connect(GTK_OBJECT (drawing_area), "expose_event", GTK_SIGNAL_FUNC (expose_event), st); g_signal_connect(GTK_OBJECT (window), "configure_event", GTK_SIGNAL_FUNC (w_configure_event), st); g_random_set_seed(time (NULL)); st->timer_id = g_timeout_add_seconds(1, clock_timer, st); g_main_loop_run (loop); clock_free (st); return EX_OK; }
int main (int argc, char *argv[]) { ScreenSaver *screen_saver; GtkWidget *window; GtkWidget *drawing_area; #if GTK_CHECK_VERSION (3, 0, 0) GdkRGBA bg; GdkRGBA fg; #else GtkStyle *style; GtkStateType state; #endif GError *error; error = NULL; bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); gtk_init_with_args (&argc, &argv, /* translators: the word "image" here * represents a command line argument */ _("image - floats images around the screen"), options, GETTEXT_PACKAGE, &error); if (error != NULL) { g_printerr (_("%s. See --help for usage information.\n"), _(error->message)); g_error_free (error); return EX_SOFTWARE; } if ((filenames == NULL) || (filenames[0] == NULL) || (filenames[1] != NULL)) { g_printerr (_("You must specify one image. See --help for usage " "information.\n")); return EX_USAGE; } window = gs_theme_window_new (); g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (gtk_main_quit), NULL); drawing_area = gtk_drawing_area_new (); #if GTK_CHECK_VERSION (3, 0, 0) bg.red = 0; bg.green = 0; bg.blue = 0; bg.alpha = 1.0; fg.red = 0.8; fg.green = 0.8; fg.blue = 0.8; fg.alpha = 1.0; gtk_widget_override_background_color (drawing_area, 0, &bg); gtk_widget_override_color (drawing_area, 0, &fg); #else style = drawing_area->style; state = (GtkStateType) 0; while (state < (GtkStateType) G_N_ELEMENTS (style->bg)) { gtk_widget_modify_bg (drawing_area, state, &style->mid[state]); state++; } #endif gtk_widget_show (drawing_area); gtk_container_add (GTK_CONTAINER (window), drawing_area); screen_saver = screen_saver_new (GTK_DRAWING_AREA (drawing_area), filenames[0], max_floater_count, should_do_rotations, should_show_paths); g_strfreev (filenames); if (should_print_stats) g_timeout_add (STAT_PRINT_FREQUENCY, (GSourceFunc) do_print_screen_saver_stats, screen_saver); if ((geometry == NULL) || !gtk_window_parse_geometry (GTK_WINDOW (window), geometry)) gtk_window_set_default_size (GTK_WINDOW (window), 640, 480); gtk_widget_show (window); gtk_main (); screen_saver_free (screen_saver); return EX_OK; }