/* Load options */ static void load_options (void) { /* Find various dirs */ last_save_dir = g_settings_get_string (settings, LAST_SAVE_DIRECTORY_KEY); if (!last_save_dir || !last_save_dir[0]) { last_save_dir = get_desktop_dir (); } else if (last_save_dir[0] == '~') { char *tmp = expand_initial_tilde (last_save_dir); g_free (last_save_dir); last_save_dir = tmp; } include_border = g_settings_get_boolean (settings, INCLUDE_BORDER_KEY); include_pointer = g_settings_get_boolean (settings, INCLUDE_POINTER_KEY); border_effect = g_settings_get_string (settings, BORDER_EFFECT_KEY); if (!border_effect) border_effect = g_strdup ("none"); delay = g_settings_get_int (settings, DELAY_KEY); }
static void prepare_screenshot (void) { AsyncExistenceJob *job; job = g_slice_new0 (AsyncExistenceJob); job->base_uris[0] = last_save_dir; /* we'll have to free these two */ job->base_uris[1] = get_desktop_dir (); job->base_uris[2] = g_strconcat ("file://", g_get_tmp_dir (), NULL); job->iteration = 0; job->type = TEST_LAST_DIR; job->window = find_current_window (&window_title); job->rectangle = find_rectangle (); /* Check if the area selection was cancelled */ if (job->rectangle && (job->rectangle->width == 0 || job->rectangle->height == 0)) { async_existence_job_free (job); gtk_main_quit (); return; } g_io_scheduler_push_job (try_check_file, job, NULL, 0, NULL); }
/* Load options */ static void load_options (void) { GConfClient *gconf_client; gconf_client = gconf_client_get_default (); /* Find various dirs */ last_save_dir = gconf_client_get_string (gconf_client, LAST_SAVE_DIRECTORY_KEY, NULL); if (!last_save_dir || !last_save_dir[0]) { last_save_dir = get_desktop_dir (); } else if (last_save_dir[0] == '~') { char *tmp = expand_initial_tilde (last_save_dir); g_free (last_save_dir); last_save_dir = tmp; } include_border = gconf_client_get_bool (gconf_client, INCLUDE_BORDER_KEY, NULL); include_pointer = gconf_client_get_bool (gconf_client, INCLUDE_POINTER_KEY, NULL); border_effect = gconf_client_get_string (gconf_client, BORDER_EFFECT_KEY, NULL); if (!border_effect) border_effect = g_strdup ("none"); delay = gconf_client_get_int (gconf_client, DELAY_KEY, NULL); g_object_unref (gconf_client); }