From 8a30c7ae54f8f63891b08360f1fbaf1ceadb5065 Mon Sep 17 00:00:00 2001 From: Andrea Zagli Date: Sat, 6 Jan 2018 10:07:24 +0100 Subject: [PATCH] Aggiunto salva e chiudi a provincia. --- data/territorio/gui/territorio.gui | 14 ++++++++++++++ src/provincia.c | 25 +++++++++++++++++++++---- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/data/territorio/gui/territorio.gui b/data/territorio/gui/territorio.gui index 2750556..002a3c7 100644 --- a/data/territorio/gui/territorio.gui +++ b/data/territorio/gui/territorio.gui @@ -1677,6 +1677,20 @@ 1 + + + Salva e _chiudi + True + True + True + True + + + True + True + 2 + + False diff --git a/src/provincia.c b/src/provincia.c index 9d1fda2..2f7be0e 100644 --- a/src/provincia.c +++ b/src/provincia.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010-2016 Andrea Zagli + * Copyright (C) 2010-2018 Andrea Zagli * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -27,7 +27,7 @@ static void territorio_provincia_class_init (TerritorioProvinciaClass *klass); static void territorio_provincia_init (TerritorioProvincia *territorio_provincia); static void territorio_provincia_carica (TerritorioProvincia *territorio_provincia); -static void territorio_provincia_salva (TerritorioProvincia *territorio_provincia); +static void territorio_provincia_salva (TerritorioProvincia *territorio_provincia, gboolean chiudi); static gboolean territorio_provincia_conferma_chiusura (TerritorioProvincia *territorio_provincia); @@ -48,6 +48,8 @@ static void territorio_provincia_on_btn_annulla_clicked (GtkButton *button, gpointer user_data); static void territorio_provincia_on_btn_salva_clicked (GtkButton *button, gpointer user_data); +static void territorio_provincia_on_btn_salva_chiudi_clicked (GtkButton *button, + gpointer user_data); #define TERRITORIO_PROVINCIA_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), TYPE_TERRITORIO_PROVINCIA, TerritorioProvinciaPrivate)) @@ -177,6 +179,8 @@ TerritorioProvincia "clicked", G_CALLBACK (territorio_provincia_on_btn_annulla_clicked), (gpointer)a); g_signal_connect (gtk_builder_get_object (priv->commons->gtkbuilder, "button21"), "clicked", G_CALLBACK (territorio_provincia_on_btn_salva_clicked), (gpointer)a); + g_signal_connect (gtk_builder_get_object (priv->commons->gtkbuilder, "button73"), + "clicked", G_CALLBACK (territorio_provincia_on_btn_salva_chiudi_clicked), (gpointer)a); priv->id = id; @@ -279,7 +283,7 @@ territorio_provincia_carica (TerritorioProvincia *territorio_provincia) } static void -territorio_provincia_salva (TerritorioProvincia *territorio_provincia) +territorio_provincia_salva (TerritorioProvincia *territorio_provincia, gboolean chiudi) { gchar *sql; @@ -316,6 +320,12 @@ territorio_provincia_salva (TerritorioProvincia *territorio_provincia) GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Salvataggio eseguito con successo."); + + if (chiudi) + { + gtk_widget_destroy (priv->w); + g_object_unref (territorio_provincia); + } } else { @@ -406,5 +416,12 @@ static void territorio_provincia_on_btn_salva_clicked (GtkButton *button, gpointer user_data) { - territorio_provincia_salva ((TerritorioProvincia *)user_data); + territorio_provincia_salva ((TerritorioProvincia *)user_data, FALSE); +} + +static void +territorio_provincia_on_btn_salva_chiudi_clicked (GtkButton *button, + gpointer user_data) +{ + territorio_provincia_salva ((TerritorioProvincia *)user_data, TRUE); } -- 2.49.0