static void panel_menu_bar_object_class_init (PanelMenuBarObjectClass *klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; gobject_class->get_property = panel_menu_bar_object_get_property; gobject_class->set_property = panel_menu_bar_object_set_property; widget_class->size_allocate = panel_menu_bar_object_size_allocate; g_type_class_add_private (klass, sizeof (PanelMenuBarObjectPrivate)); g_object_class_install_property ( gobject_class, PROP_ORIENTATION, g_param_spec_enum ("orientation", "Orientation", "The PanelMenuBarObject orientation", PANEL_TYPE_ORIENTATION, PANEL_ORIENTATION_TOP, G_PARAM_READWRITE)); if (panel_menu_bar_object_icon_size == 0) panel_menu_bar_object_icon_size = gtk_icon_size_register ("panel-menu-bar", PANEL_DEFAULT_MENU_BAR_OBJECT_ICON_SIZE, PANEL_DEFAULT_MENU_BAR_OBJECT_ICON_SIZE); }
static void cc_application_startup (GApplication *application) { CcApplication *self = CC_APPLICATION (application); GMenu *menu; GMenu *section; GSimpleAction *action; G_APPLICATION_CLASS (cc_application_parent_class)->startup (application); #ifdef HAVE_CHEESE if (gtk_clutter_init (NULL, NULL) != CLUTTER_INIT_SUCCESS) { g_critical ("Unable to initialize Clutter"); return; } #endif /* HAVE_CHEESE */ /* register a symbolic icon size for use in sidebar lists */ gtk_icon_size_register ("cc-sidebar-list", 24, 24); action = g_simple_action_new ("help", NULL); g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); g_signal_connect (action, "activate", G_CALLBACK (help_activated), self); g_object_unref (action); action = g_simple_action_new ("quit", NULL); g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); g_signal_connect (action, "activate", G_CALLBACK (cc_application_quit), self); g_object_unref (action); /* Launch panel by id. The parameter is a (panel_id, array_of_panel_parameters) * tuple. The GVariant-containing array usually is just the same array of * strings that would be generated by passing panel-specific arguments on * the command line. */ action = g_simple_action_new ("launch-panel", G_VARIANT_TYPE ("(sav)")); g_action_map_add_action (G_ACTION_MAP (application), G_ACTION (action)); g_signal_connect (action, "activate", G_CALLBACK (launch_panel_activated), self); g_object_unref (action); menu = g_menu_new (); section = g_menu_new (); g_menu_append (section, _("Help"), "app.help"); g_menu_append (section, _("Quit"), "app.quit"); g_menu_append_section (menu, NULL, G_MENU_MODEL (section)); gtk_application_set_app_menu (GTK_APPLICATION (application), G_MENU_MODEL (menu)); gtk_application_add_accelerator (GTK_APPLICATION (application), "F1", "app.help", NULL); self->priv->window = cc_window_new (GTK_APPLICATION (application)); }
void panel_init_stock_icons_and_items (void) { GtkIconFactory *factory; panel_menu_icon_size = gtk_icon_size_register ("panel-menu", PANEL_DEFAULT_MENU_ICON_SIZE, PANEL_DEFAULT_MENU_ICON_SIZE); panel_menu_bar_icon_size = gtk_icon_size_register ("panel-foobar", 20, 20); factory = gtk_icon_factory_new (); gtk_icon_factory_add_default (factory); panel_init_stock_icons (factory); panel_init_stock_items (factory); g_object_unref (factory); }
void lshw_gtk_stock_init(void) { static int stock_initted = 0; GtkIconFactory *icon_factory; int i; GtkWidget *win; if (stock_initted) return; stock_initted = 1; /* Setup the icon factory. */ icon_factory = gtk_icon_factory_new(); gtk_icon_factory_add_default(icon_factory); /* Er, yeah, a hack, but it works. :) */ win = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_realize(win); for (i = 0; i < G_N_ELEMENTS(stock_icons); i++) { GdkPixbuf *pixbuf; GtkIconSet *iconset; gchar *filename; filename = find_file(stock_icons[i].filename); if (filename == NULL) continue; pixbuf = gdk_pixbuf_new_from_file(filename, NULL); g_free(filename); if(pixbuf) /* we managed to load something */ { iconset = gtk_icon_set_new_from_pixbuf(pixbuf); g_object_unref(G_OBJECT(pixbuf)); gtk_icon_factory_add(icon_factory, stock_icons[i].name, iconset); gtk_icon_set_unref(iconset); } } gtk_widget_destroy(win); /* register logo icon size */ gtk_icon_size_register(LSHW_ICON_SIZE_LOGO, LSHW_DEFAULT_ICON_SIZE, LSHW_DEFAULT_ICON_SIZE); g_object_unref(G_OBJECT(icon_factory)); (void) &id; /* avoid "id defined but not used" warning */ }
/* Create and initalize global sticky notes instance */ void stickynotes_applet_init (PanelApplet *panel_applet) { stickynotes = g_new(StickyNotes, 1); stickynotes->notes = NULL; stickynotes->applets = NULL; stickynotes->last_timeout_data = 0; g_set_application_name (_("Sticky Notes")); /* Register size for icons */ gtk_icon_size_register ("stickynotes_icon_size", 8,8); gtk_window_set_default_icon_name ("consort-sticky-notes-applet"); stickynotes->icon_normal = gtk_icon_theme_load_icon ( gtk_icon_theme_get_default (), "consort-sticky-notes-applet", 48, 0, NULL); stickynotes->icon_prelight = gdk_pixbuf_new ( gdk_pixbuf_get_colorspace (stickynotes->icon_normal), gdk_pixbuf_get_has_alpha (stickynotes->icon_normal), gdk_pixbuf_get_bits_per_sample ( stickynotes->icon_normal), gdk_pixbuf_get_width (stickynotes->icon_normal), gdk_pixbuf_get_height (stickynotes->icon_normal)); stickynotes_make_prelight_icon (stickynotes->icon_prelight, stickynotes->icon_normal, 30); stickynotes->gconf = gconf_client_get_default(); stickynotes->visible = TRUE; stickynotes_applet_init_icons(); stickynotes_applet_init_prefs(); /* Watch GConf values */ gconf_client_add_dir (stickynotes->gconf, GCONF_PATH, GCONF_CLIENT_PRELOAD_NONE, NULL); gconf_client_notify_add (stickynotes->gconf, GCONF_PATH "/defaults", (GConfClientNotifyFunc) preferences_apply_cb, NULL, NULL, NULL); gconf_client_notify_add (stickynotes->gconf, GCONF_PATH "/settings", (GConfClientNotifyFunc) preferences_apply_cb, NULL, NULL, NULL); /* Max height for large notes*/ stickynotes->max_height = 0.8*gdk_screen_get_height( gdk_screen_get_default() ); /* Load sticky notes */ stickynotes_load (gtk_widget_get_screen (GTK_WIDGET (panel_applet))); install_check_click_on_desktop (); }
static void init_icons_and_styles (void) { /* initialize search path for custom icons */ gtk_icon_theme_append_search_path (gtk_icon_theme_get_default (), NEMO_DATADIR G_DIR_SEPARATOR_S "icons"); gtk_icon_size_register (NEMO_STATUSBAR_ICON_SIZE_NAME, NEMO_STATUSBAR_ICON_SIZE, NEMO_STATUSBAR_ICON_SIZE); nemo_application_add_app_css_provider (); }
/* --- functions --- */ void gxk_init_stock (void) { stock_icon_factory = gtk_icon_factory_new (); gtk_icon_factory_add_default (stock_icon_factory); /* setup icon sizes */ gxk_size_button = GTK_ICON_SIZE_BUTTON; /* 20x20 */ gxk_size_big_button = GTK_ICON_SIZE_DND; /* 32x32 */ gxk_size_info_sign = GTK_ICON_SIZE_DIALOG; /* 48x48 */ gxk_size_menu = gtk_icon_size_register ("GxkIconSizeMenu", 24, 24); /* GTK_ICON_SIZE_MENU is 16x16 */ gxk_size_tabulator = gtk_icon_size_register ("GxkIconSizeTabulator", 24, 24); gxk_size_toolbar = gxk_size_big_button; gxk_size_canvas = gtk_icon_size_register ("GxkIconSizeCanvas", 64, 64); gxk_size_palette = gxk_size_toolbar; gtk_icon_size_register_alias ("button", GXK_ICON_SIZE_BUTTON); gtk_icon_size_register_alias ("big-button", GXK_ICON_SIZE_BIG_BUTTON); gtk_icon_size_register_alias ("canvas", GXK_ICON_SIZE_CANVAS); gtk_icon_size_register_alias ("toolbar", GXK_ICON_SIZE_TOOLBAR); gtk_icon_size_register_alias ("menu", GXK_ICON_SIZE_MENU); gtk_icon_size_register_alias ("tabulator", GXK_ICON_SIZE_TABULATOR); gtk_icon_size_register_alias ("info-sign", GXK_ICON_SIZE_INFO_SIGN); gtk_icon_size_register_alias ("palette", GXK_ICON_SIZE_PALETTE); }
void pixmaps_init(void) { if(pixmap_cache) return; gtk_widget_push_colormap(gdk_rgb_get_colormap()); pixmap_cache = g_fscache_new((GFSLoadFunc) image_from_file, NULL, NULL); g_timeout_add(10000, purge, NULL); /* GtkIconFactory *factory; int i; factory = gtk_icon_factory_new(); for (i = 0; i < G_N_ELEMENTS(stocks); i++) { GdkPixbuf *pixbuf; GError *error = NULL; gchar *path; GtkIconSet *iset; const gchar *name = stocks[i]; path = g_strconcat(app_dir, "/images/", name, ".png", NULL); pixbuf = gdk_pixbuf_new_from_file(path, &error); if (!pixbuf) { g_warning("%s", error->message); g_error_free(error); pixbuf = gdk_pixbuf_new_from_xpm_data(bad_xpm); } g_free(path); iset = gtk_icon_set_new_from_pixbuf(pixbuf); g_object_unref(G_OBJECT(pixbuf)); gtk_icon_factory_add(factory, name, iset); gtk_icon_set_unref(iset); } gtk_icon_factory_add_default(factory); */ mount_icon_size = gtk_icon_size_register("rox-mount-size", 14, 14); load_default_pixmaps(); //option_register_widget("thumbs-purge-cache", thumbs_purge_cache); }
static OfficeRunner * new_runner (void) { OfficeRunner *run; run = g_new0 (OfficeRunner, 1); run->connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL); run->lid_switch_fd = -1; run->client = up_client_new (); g_signal_connect (G_OBJECT (run->client), "notify::lid-is-closed", G_CALLBACK (lid_is_closed_cb), run); run->ui = gtk_builder_new (); gtk_builder_add_from_file (run->ui, PKGDATADIR "office-runner.ui", NULL); run->window = WID ("window1"); run->time_label = WID ("time_label"); count_tick (NULL, NULL, run); run->your_time_label = WID ("your_time_label"); /* FIXME: No running man for now */ gtk_widget_set_no_show_all (WID ("run_image"), TRUE); gtk_widget_hide (WID ("run_image")); gtk_widget_set_no_show_all (WID ("time_image"), TRUE); gtk_widget_hide (WID ("time_image")); run->large_icon_size = gtk_icon_size_register ("large", 256, 256); gtk_image_set_from_icon_name (IWID("trophy_image"), "trophy-silver", run->large_icon_size); g_signal_connect (run->window, "delete-event", G_CALLBACK (window_delete_event_cb), run); run->run_button = WID ("run_button"); g_signal_connect (run->run_button, "clicked", G_CALLBACK (run_button_clicked_cb), run); run->notebook = WID ("notebook1"); load_records (run); /* Start the blocking here */ switch_to_page (run, RUN_PAGE); return run; }
int main(int argc, char *argv[]) { Gio gio; gtk_init(&argc, &argv); gio->monitor = g_volume_monitor_get(); g_signal_connect(gio->monitor , "volume-added", G_CALLBACK(on_volume_connected), gio); g_signal_connect(gio->monitor , "volume-removed", G_CALLBACK(on_volume_disconnected), gio); g_signal_connect(gio->monitor , "mount-added", G_CALLBACK(on_volume_mounted), gio); g_signal_connect(gio->monitor , "mount-removed", G_CALLBACK(on_volume_unmounted), gio); icon_size = gtk_icon_size_register ("",18,18); g_timeout_add(1000, (GSourceFunc) TimerFuncReturnStatusIcon, response_widget); tray_icon = CreateTrayIcon(); mountray_init(gio); gtk_main(); return 0; }
void pidgin_stock_init(void) { PidginIconThemeLoader *loader, *stockloader; const gchar *path = NULL; if (stock_initted) return; stock_initted = TRUE; /* Setup the status icon theme */ loader = g_object_new(PIDGIN_TYPE_ICON_THEME_LOADER, "type", "status-icon", NULL); purple_theme_manager_register_type(PURPLE_THEME_LOADER(loader)); purple_prefs_add_none(PIDGIN_PREFS_ROOT "/status"); purple_prefs_add_string(PIDGIN_PREFS_ROOT "/status/icon-theme", ""); purple_prefs_add_path(PIDGIN_PREFS_ROOT "/status/icon-theme-dir", ""); stockloader = g_object_new(PIDGIN_TYPE_ICON_THEME_LOADER, "type", "stock-icon", NULL); purple_theme_manager_register_type(PURPLE_THEME_LOADER(stockloader)); purple_prefs_add_none(PIDGIN_PREFS_ROOT "/stock"); purple_prefs_add_string(PIDGIN_PREFS_ROOT "/stock/icon-theme", ""); purple_prefs_add_path(PIDGIN_PREFS_ROOT "/stock/icon-theme-dir", ""); /* register custom icon sizes */ microscopic = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MICROSCOPIC, 11, 11); extra_small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL, 16, 16); small = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_SMALL, 22, 22); medium = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_MEDIUM, 32, 32); large = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_LARGE, 48, 48); huge = gtk_icon_size_register(PIDGIN_ICON_SIZE_TANGO_HUGE, 64, 64); pidgin_stock_load_stock_icon_theme(NULL); /* Pre-load Status icon theme - this avoids a bug with displaying the correct icon in the tray, theme is destroyed after*/ if (purple_prefs_get_string(PIDGIN_PREFS_ROOT "/status/icon-theme") && (path = purple_prefs_get_path(PIDGIN_PREFS_ROOT "/status/icon-theme-dir"))) { PidginStatusIconTheme *theme = PIDGIN_STATUS_ICON_THEME(purple_theme_loader_build(PURPLE_THEME_LOADER(loader), path)); pidgin_stock_load_status_icon_theme(theme); if (theme) g_object_unref(G_OBJECT(theme)); } else pidgin_stock_load_status_icon_theme(NULL); /* Register the stock items. */ gtk_stock_add_static(stock_items, G_N_ELEMENTS(stock_items)); }
int main (int argc, char **argv) { GnomeControlCenter *shell; GtkApplication *application; int status; bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); #ifdef GDK_WINDOWING_X11 XInitThreads (); #endif gtk_init (&argc, &argv); cc_shell_log_init (); /* register a symbolic icon size for use in sidebar lists */ gtk_icon_size_register ("cc-sidebar-list", 24, 24); notify_init ("gnome-control-center"); shell = gnome_control_center_new (); /* enforce single instance of this application */ application = gtk_application_new ("org.gnome.ControlCenter", G_APPLICATION_HANDLES_COMMAND_LINE); g_signal_connect (application, "startup", G_CALLBACK (application_startup_cb), shell); g_signal_connect (application, "command-line", G_CALLBACK (application_command_line_cb), shell); status = g_application_run (G_APPLICATION (application), argc, argv); g_object_unref (application); return status; }
static void panel_menu_bar_class_init (PanelMenuBarClass *klass) { GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; widget_class->parent_set = panel_menu_bar_parent_set; widget_class->style_updated = panel_menu_bar_style_updated; g_type_class_add_private (klass, sizeof (PanelMenuBarPrivate)); gtk_widget_class_install_style_property ( widget_class, g_param_spec_boolean ("icon-visible", "Icon visible", "Whether the menubar icon is visible", FALSE, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); if (panel_menu_bar_icon_size == 0) panel_menu_bar_icon_size = gtk_icon_size_register ("panel-foobar", PANEL_DEFAULT_MENU_BAR_ICON_SIZE, PANEL_DEFAULT_MENU_BAR_ICON_SIZE); }
static void from_stock (GtkSourcePixbufHelper *helper, GtkWidget *widget, gint size) { GtkIconSize icon_size; gchar *name; name = g_strdup_printf ("GtkSourcePixbufHelper%d", size); icon_size = gtk_icon_size_from_name (name); if (icon_size == GTK_ICON_SIZE_INVALID) { icon_size = gtk_icon_size_register (name, size, size); } g_free (name); set_cache (helper, gtk_widget_render_icon_pixbuf (widget, helper->stock_id, icon_size)); }
static void _new_prefs(Config * config, GdkScreen * screen, PanelPrefs * prefs, PanelPrefs const * user) { size_t i; gint width; gint height; char const * p; char * q; for(i = 0; i < sizeof(_panel_sizes) / sizeof(*_panel_sizes); i++) { if(gtk_icon_size_from_name(_panel_sizes[i].name) != GTK_ICON_SIZE_INVALID) continue; if(gtk_icon_size_lookup(_panel_sizes[i].iconsize, &width, &height) != TRUE) width = height = _panel_sizes[i].size; gtk_icon_size_register(_panel_sizes[i].name, width, height); } if(user != NULL) memcpy(prefs, user, sizeof(*prefs)); else { prefs->iconsize = PANEL_ICON_SIZE_DEFAULT; prefs->monitor = -1; } if((p = config_get(config, NULL, "monitor")) != NULL) { prefs->monitor = strtol(p, &q, 0); if(p[0] == '\0' || *q != '\0') prefs->monitor = -1; } #if GTK_CHECK_VERSION(2, 20, 0) if(prefs->monitor == -1) prefs->monitor = gdk_screen_get_primary_monitor(screen); #endif }
static void menu_style_set_cb (GtkWidget *menu, GtkStyle *old_style, ShellStatusMenu *status) { ShellStatusMenuPrivate *priv = status->priv; GtkSettings *settings; int width; int height; priv->icon_size = gtk_icon_size_from_name ("panel-menu"); if (priv->icon_size == GTK_ICON_SIZE_INVALID) priv->icon_size = gtk_icon_size_register ("panel-menu", 24, 24); if (gtk_widget_has_screen (menu)) settings = gtk_settings_get_for_screen (gtk_widget_get_screen (menu)); else settings = gtk_settings_get_default (); if (!gtk_icon_size_lookup_for_settings (settings, priv->icon_size, &width, &height)) priv->pixel_size = -1; else priv->pixel_size = MAX(width, height); }