static void nautilus_file_background_receive_gconf_changes (EelBackground *background) { guint notification_id; eel_gconf_monitor_add ("/desktop/gnome/background"); notification_id = eel_gconf_notification_add ("/desktop/gnome/background", desktop_background_gconf_notify_cb, background); g_object_set_data (G_OBJECT (background), "desktop_gconf_notification", GUINT_TO_POINTER (notification_id)); g_signal_connect (background, "destroy", G_CALLBACK (desktop_background_destroyed_callback), NULL); }
static void nautilus_file_management_properties_dialog_setup (GladeXML *xml_dialog, GtkWindow *window) { GtkWidget *dialog; /* setup gconf stuff */ eel_gconf_monitor_add ("/apps/nautilus/icon_view"); eel_gconf_preload_cache ("/apps/nautilus/icon_view", GCONF_CLIENT_PRELOAD_ONELEVEL); eel_gconf_monitor_add ("/apps/nautilus/list_view"); eel_gconf_preload_cache ("/apps/nautilus/list_view", GCONF_CLIENT_PRELOAD_ONELEVEL); eel_gconf_monitor_add ("/apps/nautilus/preferences"); eel_gconf_preload_cache ("/apps/nautilus/preferences", GCONF_CLIENT_PRELOAD_ONELEVEL); eel_gconf_monitor_add ("/desktop/gnome/file_views"); eel_gconf_preload_cache ("/desktop/gnome/file_views", GCONF_CLIENT_PRELOAD_ONELEVEL); /* setup UI */ nautilus_file_management_properties_size_group_create (xml_dialog, "views_label", 4); nautilus_file_management_properties_size_group_create (xml_dialog, "captions_label", 3); nautilus_file_management_properties_size_group_create (xml_dialog, "preview_label", 5); create_date_format_menu (xml_dialog); /* setup preferences */ eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_COMPACT_LAYOUT_WIDGET, NAUTILUS_PREFERENCES_ICON_VIEW_DEFAULT_USE_TIGHTER_LAYOUT); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_LABELS_BESIDE_ICONS_WIDGET, NAUTILUS_PREFERENCES_ICON_VIEW_LABELS_BESIDE_ICONS); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_FOLDERS_FIRST_WIDGET, NAUTILUS_PREFERENCES_SORT_DIRECTORIES_FIRST); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_ALWAYS_USE_BROWSER_WIDGET, NAUTILUS_PREFERENCES_ALWAYS_USE_BROWSER); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_MEDIA_AUTOMOUNT_OPEN, NAUTILUS_PREFERENCES_MEDIA_AUTOMOUNT_OPEN); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_MEDIA_AUTORUN_NEVER, NAUTILUS_PREFERENCES_MEDIA_AUTORUN_NEVER); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TRASH_CONFIRM_WIDGET, NAUTILUS_PREFERENCES_CONFIRM_TRASH); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TRASH_DELETE_WIDGET, NAUTILUS_PREFERENCES_ENABLE_DELETE); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SHOW_HIDDEN_WIDGET, NAUTILUS_PREFERENCES_SHOW_HIDDEN_FILES); eel_preferences_glade_connect_bool_slave (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SHOW_HIDDEN_WIDGET, NAUTILUS_PREFERENCES_SHOW_BACKUP_FILES); eel_preferences_glade_connect_bool (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TREE_VIEW_FOLDERS_WIDGET, NAUTILUS_PREFERENCES_TREE_SHOW_ONLY_DIRECTORIES); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_DEFAULT_VIEW_WIDGET, NAUTILUS_PREFERENCES_DEFAULT_FOLDER_VIEWER, (const char **) default_view_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_ICON_VIEW_ZOOM_WIDGET, NAUTILUS_PREFERENCES_ICON_VIEW_DEFAULT_ZOOM_LEVEL, (const char **) zoom_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_LIST_VIEW_ZOOM_WIDGET, NAUTILUS_PREFERENCES_LIST_VIEW_DEFAULT_ZOOM_LEVEL, (const char **) zoom_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SORT_ORDER_WIDGET, NAUTILUS_PREFERENCES_ICON_VIEW_DEFAULT_SORT_ORDER, (const char **) sort_order_values); eel_preferences_glade_connect_string_enum_combo_box_slave (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SORT_ORDER_WIDGET, NAUTILUS_PREFERENCES_LIST_VIEW_DEFAULT_SORT_ORDER); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_PREVIEW_TEXT_WIDGET, NAUTILUS_PREFERENCES_SHOW_TEXT_IN_ICONS, (const char **) preview_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_PREVIEW_IMAGE_WIDGET, NAUTILUS_PREFERENCES_SHOW_IMAGE_FILE_THUMBNAILS, (const char **) preview_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_PREVIEW_SOUND_WIDGET, NAUTILUS_PREFERENCES_PREVIEW_SOUND, (const char **) preview_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_PREVIEW_FOLDER_WIDGET, NAUTILUS_PREFERENCES_SHOW_DIRECTORY_ITEM_COUNTS, (const char **) preview_values); eel_preferences_glade_connect_string_enum_combo_box (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_DATE_FORMAT_WIDGET, NAUTILUS_PREFERENCES_DATE_FORMAT, (const char **) date_format_values); eel_preferences_glade_connect_string_enum_radio_button (xml_dialog, (const char **) click_behavior_components, NAUTILUS_PREFERENCES_CLICK_POLICY, (const char **) click_behavior_values); eel_preferences_glade_connect_string_enum_radio_button (xml_dialog, (const char **) executable_text_components, NAUTILUS_PREFERENCES_EXECUTABLE_TEXT_ACTIVATION, (const char **) executable_text_values); eel_preferences_glade_connect_int_enum (xml_dialog, NAUTILUS_FILE_MANAGEMENT_PROPERTIES_THUMBNAIL_LIMIT_WIDGET, NAUTILUS_PREFERENCES_IMAGE_FILE_THUMBNAIL_LIMIT, (const int *) thumbnail_limit_values); nautilus_file_management_properties_dialog_setup_icon_caption_page (xml_dialog); nautilus_file_management_properties_dialog_setup_list_column_page (xml_dialog); nautilus_file_management_properties_dialog_setup_media_page (xml_dialog); eel_preferences_add_callback (NAUTILUS_PREFERENCES_MEDIA_AUTORUN_NEVER, (EelPreferencesCallback ) nautilus_file_management_properties_dialog_update_media_sensitivity, g_object_ref (xml_dialog)); /* UI callbacks */ dialog = glade_xml_get_widget (xml_dialog, "file_management_dialog"); g_signal_connect_data (G_OBJECT (dialog), "response", G_CALLBACK (nautilus_file_management_properties_dialog_response_cb), g_object_ref (xml_dialog), (GClosureNotify)g_object_unref, 0); gtk_window_set_icon_name (GTK_WINDOW (dialog), "file-manager"); if (window) { gtk_window_set_screen (GTK_WINDOW (dialog), gtk_window_get_screen(window)); } gtk_widget_show (dialog); }
/* Initialize application data. */ static void initialize_data (void) { char *current_dir; char *path, *filename; int i = 0; convert_to_new_comment_system (); create_default_categories_if_needed (); eel_gconf_monitor_add ("/apps/gthumb"); gth_monitor = gth_monitor_new (); /* Icon theme */ icon_theme = gtk_icon_theme_get_default (); g_signal_connect (icon_theme, "changed", G_CALLBACK (theme_changed_cb), NULL); /* Default windows icon */ init_icon_pixbufs (); g_set_application_name (_("gThumb")); gtk_window_set_default_icon_name ("gthumb"); /**/ init_session ("gthumb"); if (session_is_restored ()) return; /* Parse command line arguments. */ if (remaining_args == NULL) { /* No arguments specified. */ reset_command_line_catalog (); return; } current_dir = g_get_current_dir (); while ((filename = remaining_args[i++]) != NULL) { char *tmp1 = NULL; gboolean is_dir; if (uri_has_scheme (filename) || g_path_is_absolute (filename)) tmp1 = gnome_vfs_make_uri_from_shell_arg (filename); else tmp1 = g_strconcat (current_dir, "/", filename, NULL); path = remove_special_dirs_from_path (tmp1); g_free (tmp1); if (path_is_dir (path)) is_dir = TRUE; else if (path_is_file (path)) is_dir = FALSE; else { g_free (path); continue; } if (is_dir) { dir_urls = g_list_prepend (dir_urls, add_scheme_if_absent (path)); g_free (path); } else file_urls = g_list_prepend (file_urls, path); } n_file_urls = g_list_length (file_urls); n_dir_urls = g_list_length (dir_urls); if (n_file_urls == 1) view_single_image = TRUE; if (n_file_urls > 1) { /* Create a catalog with the command line list. */ Catalog *catalog; char *catalog_path; GList *scan; catalog = catalog_new (); catalog_path = get_command_line_catalog_path (); catalog_set_path (catalog, catalog_path); g_free (catalog_path); for (scan = file_urls; scan; scan = scan->next) catalog_add_item (catalog, scan->data); catalog->sort_method = GTH_SORT_METHOD_MANUAL; catalog_write_to_disk (catalog, NULL); catalog_free (catalog); view_comline_catalog = TRUE; } else reset_command_line_catalog (); g_free (current_dir); }