static void cache_manager_render_start_cb(GenericDialog *fd, gpointer data) { CleanData *cd = data; gchar *path; if (cd->list || !gtk_widget_get_sensitive(cd->button_start)) return; path = remove_trailing_slash((gtk_entry_get_text(GTK_ENTRY(cd->entry)))); parse_out_relatives(path); if (!isdir(path)) { warning_dialog(_("Invalid folder"), _("The specified folder can not be found."), GTK_STOCK_DIALOG_WARNING, cd->gd->dialog); } else { FileData *dir_fd; gtk_widget_set_sensitive(cd->group, FALSE); gtk_widget_set_sensitive(cd->button_start, FALSE); gtk_widget_set_sensitive(cd->button_stop, TRUE); gtk_widget_set_sensitive(cd->button_close, FALSE); spinner_set_interval(cd->spinner, SPINNER_SPEED); dir_fd = file_data_new_dir(path); cache_manager_render_folder(cd, dir_fd); file_data_unref(dir_fd); while (cache_manager_render_file(cd)); } g_free(path); }
static void editor_verbose_window_enable_close(EditorVerboseData *vd) { vd->gd->cancel_cb = editor_verbose_window_close; spinner_set_interval(vd->spinner, -1); gtk_widget_set_sensitive(vd->button_stop, FALSE); gtk_widget_set_sensitive(vd->button_close, TRUE); }
static void cache_manager_render_finish(CleanData *cd) { cache_manager_render_reset(cd); gtk_entry_set_text(GTK_ENTRY(cd->progress), _("done")); spinner_set_interval(cd->spinner, -1); gtk_widget_set_sensitive(cd->group, TRUE); gtk_widget_set_sensitive(cd->button_start, TRUE); gtk_widget_set_sensitive(cd->button_stop, FALSE); gtk_widget_set_sensitive(cd->button_close, TRUE); }
static void cache_maintain_home_stop(CMData *cm) { if (cm->idle_id) { g_source_remove(cm->idle_id); cm->idle_id = 0; } gtk_entry_set_text(GTK_ENTRY(cm->entry), _("done")); spinner_set_interval(cm->spinner, -1); gtk_widget_set_sensitive(cm->button_stop, FALSE); gtk_widget_set_sensitive(cm->button_close, TRUE); }