From: Andrea Zagli Date: Wed, 28 Sep 2016 13:34:26 +0000 (+0200) Subject: Editing config. X-Git-Url: https://saetta.ns0.it/gitweb?a=commitdiff_plain;h=d5fc53f5c8f81715c92d8495d5f00d9fb6330f69;p=zakconfi%2Fgui Editing config. --- diff --git a/src/main.c b/src/main.c index d775f87..81dbcbe 100644 --- a/src/main.c +++ b/src/main.c @@ -148,7 +148,7 @@ fill_trFolders (const gchar *filter) { gboolean ret = FALSE; - GList *lstConfigs = zak_confi_get_configs_list (confi, filter); + GList *lstConfigs = zak_confi_get_configs_list (cnc_string, filter); gtk_tree_store_clear (storeFolders); @@ -551,10 +551,7 @@ on_mnuDbOpen_activate (GtkMenuItem *menuitem, { filter = (gchar *)gtk_entry_get_text (GTK_ENTRY (txtConfigsFilter)); - confi = zak_confi_new (cnc_string); - - if (confi != NULL - && fill_trFolders (filter)) + if (fill_trFolders (filter)) { gtk_widget_set_sensitive (mnuDbClose, TRUE); gtk_widget_set_sensitive (mnuDbRefresh, TRUE); @@ -630,7 +627,7 @@ on_mnuConfigsNew_activate (GtkMenuItem *menuitem, gtk_text_buffer_get_bounds (buffer, &iter1, &iter2); description = gtk_text_buffer_get_text (buffer, &iter1, &iter2, FALSE); - conficonfi = zak_confi_add_config (confi, name, description); + conficonfi = zak_confi_add_config (cnc_string, name, description); if (conficonfi != NULL) { gtk_tree_store_append (storeFolders, &iter, NULL); @@ -655,8 +652,6 @@ on_mnuConfigsEdit_activate (GtkMenuItem *menuitem, GtkTreePath *path = gtk_tree_model_get_path (GTK_TREE_MODEL (storeFolders), &iter); if (path != NULL && gtk_tree_path_get_depth (path) == 1) { - ZakConfi *confi; - GError *error = NULL; gtk_builder_add_objects_from_file (glaMain, @@ -665,45 +660,40 @@ on_mnuConfigsEdit_activate (GtkMenuItem *menuitem, &error); GtkWidget *diag = GTK_WIDGET (gtk_builder_get_object (glaMain, "wConfiguration")); - GtkWidget *txtID = GTK_WIDGET (gtk_builder_get_object (glaMain, "txtID")); GtkWidget *txtName = GTK_WIDGET (gtk_builder_get_object (glaMain, "txtName")); GtkWidget *txtvDescription = GTK_WIDGET (gtk_builder_get_object (glaMain, "txtvDescription")); GtkTextBuffer *buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (txtvDescription)); - gint id; gchar *name; gchar *description; gtk_tree_model_get (GTK_TREE_MODEL (storeFolders), &iter, + FOLDERS_COL_KEY, &name, + FOLDERS_COL_DESCRIPTION, &description, -1); - g_object_get (G_OBJECT (confi), - "id_config", &id, - "name", &name, - "description", &description, - NULL); - - gtk_entry_set_text (GTK_ENTRY (txtID), g_strdup_printf ("%d", id)); gtk_entry_set_text (GTK_ENTRY (txtName), name); - gtk_text_buffer_set_text (buffer, description, strlen (description)); + gtk_text_buffer_set_text (buffer, description, -1); if (gtk_dialog_run (GTK_DIALOG (diag)) == GTK_RESPONSE_OK) { + ZakConfi *confi; GtkTextIter iter1, iter2; - name = g_strdup (gtk_entry_get_text (GTK_ENTRY (txtName))); - gtk_text_buffer_get_bounds (buffer, &iter1, &iter2); - description = gtk_text_buffer_get_text (buffer, &iter1, &iter2, FALSE); + confi = zak_confi_new (g_strdup_printf ("%s;CONFI_NAME=%s", cnc_string, name)); + if (confi != NULL) + { + name = g_strdup (gtk_entry_get_text (GTK_ENTRY (txtName))); + gtk_text_buffer_get_bounds (buffer, &iter1, &iter2); + description = gtk_text_buffer_get_text (buffer, &iter1, &iter2, FALSE); - g_object_set (G_OBJECT (confi), - "name", name, - "description", description, - NULL); + zak_confi_set_config (confi, name, description); - gtk_tree_store_set (storeFolders, &iter, - FOLDERS_COL_KEY, name, - FOLDERS_COL_DESCRIPTION, description, - -1); + gtk_tree_store_set (storeFolders, &iter, + FOLDERS_COL_KEY, name, + FOLDERS_COL_DESCRIPTION, description, + -1); + } } gtk_widget_destroy (diag); @@ -795,7 +785,7 @@ on_mnuConfigsExport_activate (GtkMenuItem *menuitem, else { /* saving all configurations */ - GList *configs = zak_confi_get_configs_list (confi, filter); + GList *configs = zak_confi_get_configs_list (cnc_string, filter); if (configs != NULL) { xmlDocPtr xdoc; @@ -1168,6 +1158,8 @@ main (int argc, char **argv) GOptionContext *context; GError *error; + cnc_string = NULL; + gtk_init (&argc, &argv); #ifdef G_OS_WIN32