From: Andrea Zagli Date: Sat, 2 Dec 2017 11:38:42 +0000 (+0100) Subject: Merge branch 'zakform' into develop X-Git-Url: https://saetta.ns0.it/gitweb?a=commitdiff_plain;h=bacc8b0f01a86f719d2162004e40202cd17f2f02;p=solipa%2Forganigramma Merge branch 'zakform' into develop --- bacc8b0f01a86f719d2162004e40202cd17f2f02 diff --cc configure.ac index 6300c91,0f1fb0f..b94eaf6 --- a/configure.ac +++ b/configure.ac @@@ -46,8 -46,12 +46,10 @@@ PKG_CHECK_MODULES(ORGANIGRAMMA, [gio-2. gtk+-3.0 >= 3.0 libzakutils libgdaexgrid -- libgtkform >= 0.5.0 -- libgtkformui >= 0.5.0 + libzakform + libzakformgtk + libzakformgdaex + libzakformgtkdecoder libzakconfi >= 0.10.0 libzakauthe >= 0.5.99 libzakautho >= 0.0.5 diff --cc data/organigramma/form/persona.form index 50999e3,170afd2..8f5efb1 --- a/data/organigramma/form/persona.form +++ b/data/organigramma/form/persona.form @@@ -1,77 -1,75 +1,68 @@@ - - - persone
- - - - t - t - - - - - - - - - - t - - - - - - - SELECT a.descrizione - FROM titoli AS a - WHERE a.id = ##key0::gint - - - - - - - - - date - %d/%m/%Y - - - - - - - - - - - f - f - - - - - - entry27 - territorio - - SELECT c.nome FROM comuni AS c WHERE c.id = ##label110::gint - - - - - - - - - - - - - - - - - -
+ + + id + integer + + TRUE + label67 + + + nome + string + + entry14 + + + cognome + string + + entry17 + + - ++ + id_titoli + integer + - gtkformdecoder24 ++ zakgtkdecoder17 + + + data_nascita + datetime + + entry20 + %d/%m/%Y + %d/%m/%Y + + + indirizzo + string + + entry26 + - - citta - string - FALSE - FALSE - entry27 - - ++ + id_citta + integer + - label110 ++ zakgtkdecoder18 + + + cap + string + + entry29 + + + codice_fiscale + string + + entry28 + + + + descrizione + string + + textview8 + + diff --cc data/organigramma/gui/organigramma.gui index 8b60a18,aff2306..9175dd2 --- a/data/organigramma/gui/organigramma.gui +++ b/data/organigramma/gui/organigramma.gui @@@ -1738,58 -1739,58 +1739,6 @@@ 0 -- -- -- True -- False -- True -- 5 -- -- -- True -- True -- True -- False -- ● -- False -- False -- -- -- True -- True -- 0 -- -- -- -- -- ... -- True -- True -- True -- -- -- False -- True -- 1 -- -- -- -- -- False -- lbl_id_citta -- -- -- False -- True -- 2 -- -- -- -- -- 1 -- 1 -- -- True @@@ -1829,6 -1830,6 +1778,16 @@@ 2 ++ ++ ++ True ++ False ++ ++ ++ 1 ++ 1 ++ ++ diff --cc liborganigramma.pc.in index 7e9982a,17265fd..aae95ad --- a/liborganigramma.pc.in +++ b/liborganigramma.pc.in @@@ -6,6 -6,6 +6,6 @@@ includedir=@includedir Name: @PACKAGE_NAME@ Description: Libreria con l'interfaccia per la gestione dell'organigramma. Version: @PACKAGE_VERSION@ - Requires: libgdaex >= 0.5.0 libgtkform >= 0.5.0 libgtkformui >= 0.5.0 libzakauthe libzakautho >= 0.0.5 libsolipa >= 0.5.0 libterritorio libpq -Requires: libzakutils libgdaex >= 0.5.0 libgtkform >= 0.5.0 libgtkformui >= 0.5.0 libzakform libzakformgtk libzakformgdaex libzakformgtkdecoder libzakconfi libzakauthe libzakautho >= 0.0.5 libsolipa >= 0.5.0 libterritorio libpq ++Requires: libzakutils libgdaex >= 0.5.0 libzakform libzakformgtk libzakformgdaex libzakformgtkdecoder libzakconfi libzakauthe libzakautho >= 0.0.5 libsolipa >= 0.5.0 libterritorio libpq Libs: -L${libdir} -lorganigramma Cflags: -I${includedir} diff --cc src/persona.c index 6451cf3,c0da112..8e958b3 --- a/src/persona.c +++ b/src/persona.c @@@ -22,12 -22,14 +22,16 @@@ #endif #include - #include - #include - #include + #include + #include + #include + #include + #include #include ++#include #include ++#include #include "persona.h" #include "personaincarico.h" @@@ -77,7 -79,8 +81,9 @@@ static void organigramma_persona_on_uff static void organigramma_persona_on_recapito_aggiornato (gpointer instance, gpointer user_data); static void organigramma_persona_on_titolo_selezionato (gpointer instance, guint id, gpointer user_data); + static gchar *organigramma_persona_on_titolo_decode (gpointer instance, gchar *key, gpointer user_data); static void organigramma_persona_on_comune_selezionato (gpointer instance, guint id, gpointer user_data); ++static gchar *organigramma_persona_on_comune_decode (gpointer instance, gchar *key, gpointer user_data); static gboolean organigramma_persona_on_w_organigramma_persona_delete_event (GtkWidget *widget, GdkEvent *event, @@@ -348,10 -353,13 +356,15 @@@ OrganigrammaPerson g_signal_connect (priv->sel_uffici, "changed", G_CALLBACK (organigramma_persona_on_uffici_sel_changed), (gpointer)a); - g_signal_connect (gtk_builder_get_object (priv->commons->gtkbuilder, "gtkformdecoder24"), + g_signal_connect (gtk_builder_get_object (priv->commons->gtkbuilder, "zakgtkdecoder17"), "btn-browse-clicked", G_CALLBACK (organigramma_persona_on_btn_ricerca_titolo_clicked), (gpointer)a); - g_signal_connect (G_OBJECT (gtk_builder_get_object (priv->commons->gtkbuilder, "button89")), - "clicked", G_CALLBACK (organigramma_persona_on_btn_ricerca_comune_clicked), (gpointer)a); + g_signal_connect (gtk_builder_get_object (priv->commons->gtkbuilder, "zakgtkdecoder17"), + "decode", G_CALLBACK (organigramma_persona_on_titolo_decode), (gpointer)a); + - g_signal_connect (G_OBJECT (gtk_builder_get_object (priv->commons->gtkbuilder, "button89")), - "clicked", G_CALLBACK (organigramma_persona_on_btn_ricerca_comune_clicked), (gpointer)a); ++ g_signal_connect (G_OBJECT (gtk_builder_get_object (priv->commons->gtkbuilder, "zakgtkdecoder18")), ++ "btn-browse-clicked", G_CALLBACK (organigramma_persona_on_btn_ricerca_comune_clicked), (gpointer)a); ++ g_signal_connect (gtk_builder_get_object (priv->commons->gtkbuilder, "zakgtkdecoder18"), ++ "decode", G_CALLBACK (organigramma_persona_on_comune_decode), (gpointer)a); g_signal_connect (G_OBJECT (gtk_builder_get_object (priv->commons->gtkbuilder, "button79")), "clicked", G_CALLBACK (organigramma_persona_on_btn_incarico_nuovo_clicked), (gpointer)a); @@@ -604,8 -613,8 +618,8 @@@ organigramma_persona_carica_incarichi ( gtk_list_store_append (GTK_LIST_STORE (priv->objects[LSTORE_INCARICHI]), &iter); gtk_list_store_set (GTK_LIST_STORE (priv->objects[LSTORE_INCARICHI]), &iter, INCARICHI_COL_ID, gdaex_data_model_get_field_value_integer_at (dm, row, "id"), -- INCARICHI_COL_DA_DATA, gtk_form_field_datetime_get_str_from_tm (gdaex_data_model_get_field_value_tm_at (dm, row, "da_data"), "%d/%m/%Y"), -- INCARICHI_COL_A_DATA, gtk_form_field_datetime_get_str_from_tm (gdaex_data_model_get_field_value_tm_at (dm, row, "a_data"), "%d/%m/%Y"), ++ INCARICHI_COL_DA_DATA, zak_utils_tm_format (gdaex_data_model_get_field_value_tm_at (dm, row, "da_data"), "%d/%m/%Y"), ++ INCARICHI_COL_A_DATA, zak_utils_tm_format (gdaex_data_model_get_field_value_tm_at (dm, row, "a_data"), "%d/%m/%Y"), INCARICHI_COL_DESCRIZIONE, gdaex_data_model_get_field_value_stringify_at (dm, row, "descrizione"), -1); } @@@ -648,8 -657,8 +662,8 @@@ organigramma_persona_carica_nodi (Organ NODI_COL_ID, gdaex_data_model_get_field_value_integer_at (dm, row, "id"), NODI_COL_TIPO, gdaex_data_model_get_field_value_stringify_at (dm, row, "tipo_nodo"), NODI_COL_NODO, gdaex_data_model_get_field_value_stringify_at (dm, row, "nome"), -- NODI_COL_DA_DATA, gtk_form_field_datetime_get_str_from_tm (gdaex_data_model_get_field_value_tm_at (dm, row, "da_data"), "%d/%m/%Y"), -- NODI_COL_A_DATA, gtk_form_field_datetime_get_str_from_tm (gdaex_data_model_get_field_value_tm_at (dm, row, "a_data"), "%d/%m/%Y"), ++ NODI_COL_DA_DATA, zak_utils_tm_format (gdaex_data_model_get_field_value_tm_at (dm, row, "da_data"), "%d/%m/%Y"), ++ NODI_COL_A_DATA, zak_utils_tm_format (gdaex_data_model_get_field_value_tm_at (dm, row, "a_data"), "%d/%m/%Y"), -1); } @@@ -744,8 -753,8 +758,8 @@@ organigramma_persona_carica_uffici (Org UFFICI_COL_ID, gdaex_data_model_get_field_value_integer_at (dm, row, "id"), UFFICI_COL_UFFICIO, gdaex_data_model_get_field_value_stringify_at (dm, row, "nome"), UFFICI_COL_RUOLO, gdaex_data_model_get_field_value_stringify_at (dm, row, "ruolo"), -- UFFICI_COL_DA_DATA, gtk_form_field_datetime_get_str_from_tm (gdaex_data_model_get_field_value_tm_at (dm, row, "da_data"), "%d/%m/%Y"), -- UFFICI_COL_A_DATA, gtk_form_field_datetime_get_str_from_tm (gdaex_data_model_get_field_value_tm_at (dm, row, "a_data"), "%d/%m/%Y"), ++ UFFICI_COL_DA_DATA, zak_utils_tm_format (gdaex_data_model_get_field_value_tm_at (dm, row, "da_data"), "%d/%m/%Y"), ++ UFFICI_COL_A_DATA, zak_utils_tm_format (gdaex_data_model_get_field_value_tm_at (dm, row, "a_data"), "%d/%m/%Y"), -1); } @@@ -1140,6 -1149,42 +1154,73 @@@ organigramma_persona_conferma_chiusura } /* CALLBACK */ + static void + organigramma_persona_on_titolo_selezionato (gpointer instance, guint id, gpointer user_data) + { + OrganigrammaPersona *f = (OrganigrammaPersona *)user_data; + OrganigrammaPersonaPrivate *priv = ORGANIGRAMMA_PERSONA_GET_PRIVATE (f); + + zak_gtk_decoder_set_key (ZAK_GTK_DECODER (gtk_builder_get_object (priv->commons->gtkbuilder, "zakgtkdecoder17")), + g_strdup_printf ("%d", id)); + } + + static gchar + *organigramma_persona_on_titolo_decode (gpointer instance, gchar *key, gpointer user_data) + { + GString *ret; + gchar *sql; + GdaDataModel *dm; + + OrganigrammaPersona *f = (OrganigrammaPersona *)user_data; + OrganigrammaPersonaPrivate *priv = ORGANIGRAMMA_PERSONA_GET_PRIVATE (f); + + ret = g_string_new (""); + + sql = g_strdup_printf ("SELECT descrizione" + " FROM titoli" + " WHERE id = %d", + strtol (key, NULL, 10)); + dm = gdaex_query (priv->commons->gdaex, sql); + g_free (sql); + if (!gdaex_data_model_is_empty (dm)) + { + g_string_append (ret, gdaex_data_model_get_value_stringify_at (dm, 0, 0)); + } + + return ret->str; + } + ++static void ++organigramma_persona_on_comune_selezionato (gpointer instance, guint id, gpointer user_data) ++{ ++ OrganigrammaPersona *f = (OrganigrammaPersona *)user_data; ++ OrganigrammaPersonaPrivate *priv = ORGANIGRAMMA_PERSONA_GET_PRIVATE (f); ++ ++ zak_gtk_decoder_set_key (ZAK_GTK_DECODER (gtk_builder_get_object (priv->commons->gtkbuilder, "zakgtkdecoder18")), ++ g_strdup_printf ("%d", id)); ++} ++ ++static gchar ++*organigramma_persona_on_comune_decode (gpointer instance, gchar *key, gpointer user_data) ++{ ++ GString *ret; ++ GHashTable *ht_comune; ++ ++ OrganigrammaPersona *f = (OrganigrammaPersona *)user_data; ++ OrganigrammaPersonaPrivate *priv = ORGANIGRAMMA_PERSONA_GET_PRIVATE (f); ++ ++ ret = g_string_new (""); ++ ++ ht_comune = territorio_comune_get_by_id (priv->commons->territorio_commons, strtol (key, NULL, 10)); ++ ++ if (ht_comune != NULL) ++ { ++ g_string_append (ret, g_hash_table_lookup (ht_comune, "nome")); ++ } ++ ++ return ret->str; ++} ++ static void organigramma_persona_on_incarico_aggiornato (gpointer instance, gpointer user_data) { @@@ -1194,27 -1239,16 +1275,6 @@@ organigramma_persona_on_recapito_aggior organigramma_persona_carica_recapiti (persona); } - static void - organigramma_persona_on_titolo_selezionato (gpointer instance, guint id, gpointer user_data) - { - OrganigrammaPersona *ia = (OrganigrammaPersona *)user_data; - - OrganigrammaPersonaPrivate *priv = ORGANIGRAMMA_PERSONA_GET_PRIVATE (ia); - - gtk_form_widget_set_value_stringify (gtk_form_get_form_widget_from_name (priv->form, "gtkformdecoder24"), - g_strdup_printf ("%d", id)); - } - --static void --organigramma_persona_on_comune_selezionato (gpointer instance, guint id, gpointer user_data) --{ -- OrganigrammaPersona *ia = (OrganigrammaPersona *)user_data; -- -- OrganigrammaPersonaPrivate *priv = ORGANIGRAMMA_PERSONA_GET_PRIVATE (ia); -- -- gtk_form_widget_set_value_stringify (gtk_form_get_form_widget_from_name (priv->form, "label110"), g_strdup_printf ("%d", id)); --} -- static gboolean organigramma_persona_on_w_organigramma_persona_delete_event (GtkWidget *widget, GdkEvent *event,