static void remmina_file_editor_on_save(GtkWidget* button, RemminaFileEditor* gfe) { remmina_file_editor_update(gfe); remmina_file_save_all(gfe->priv->remmina_file); remmina_icon_populate_menu(); gtk_widget_destroy(GTK_WIDGET(gfe)); }
static void remmina_main_import_file_list(RemminaMain *remminamain, GSList *files) { GtkWidget *dlg; GSList *element; gchar *path; RemminaFilePlugin *plugin; GString *err; RemminaFile *remminafile = NULL; gboolean imported; err = g_string_new(NULL); imported = FALSE; for (element = files; element; element = element->next) { path = (gchar*) element->data; plugin = remmina_plugin_manager_get_import_file_handler(path); if (plugin && (remminafile = plugin->import_func(path)) != NULL && remmina_file_get_string(remminafile, "name")) { remmina_file_generate_filename(remminafile); remmina_file_save_all(remminafile); imported = TRUE; } else { g_string_append(err, path); g_string_append_c(err, '\n'); } if (remminafile) { remmina_file_free(remminafile); remminafile = NULL; } g_free(path); } g_slist_free(files); if (err->len > 0) { dlg = gtk_message_dialog_new(GTK_WINDOW(remminamain), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, _("Unable to import:\n%s"), err->str); g_signal_connect(G_OBJECT(dlg), "response", G_CALLBACK(gtk_widget_destroy), NULL); gtk_widget_show(dlg); } g_string_free(err, TRUE); if (imported) { remmina_main_load_files(remminamain, TRUE); } }
static void remmina_file_editor_on_connect(GtkWidget* button, RemminaFileEditor* gfe) { RemminaFile* gf; remmina_file_editor_update(gfe); if (remmina_pref.save_when_connect) { remmina_file_save_all(gfe->priv->remmina_file); remmina_icon_populate_menu(); } gf = remmina_file_dup(gfe->priv->remmina_file); /* Put server into name for Quick Connect */ if (remmina_file_get_filename(gf) == NULL) { remmina_file_set_string(gf, "name", remmina_file_get_string(gf, "server")); } gtk_widget_destroy(GTK_WIDGET(gfe)); remmina_connection_window_open_from_file(gf); }
static void remmina_file_editor_on_default(GtkWidget* button, RemminaFileEditor* gfe) { RemminaFile* gf; GtkWidget* dialog; remmina_file_editor_update(gfe); gf = remmina_file_dup(gfe->priv->remmina_file); remmina_file_set_filename(gf, remmina_pref_file); /* Clear properties that should never be default */ remmina_file_set_string(gf, "name", NULL); remmina_file_set_string(gf, "server", NULL); remmina_file_set_string(gf, "password", NULL); remmina_file_save_all(gf); remmina_file_free(gf); dialog = gtk_message_dialog_new(GTK_WINDOW(gfe), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, _("Default settings saved.")); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); }