From: Andrea Zagli <azagli@libero.it> Date: Sun, 30 Jan 2011 11:24:46 +0000 (+0100) Subject: Aggiunta la funzione SolipaAllegato::add_to_gtkform. X-Git-Tag: Pre_EvolutionDataServer_2.32~5 X-Git-Url: https://saetta.ns0.it/gitweb?a=commitdiff_plain;h=e3dbac8e791f47905c8c2535c6315fa3f8d9f3c3;p=solipa%2Flibsolipa Aggiunta la funzione SolipaAllegato::add_to_gtkform. --- diff --git a/configure.ac b/configure.ac index efc2c4d..a6ee59b 100644 --- a/configure.ac +++ b/configure.ac @@ -30,6 +30,7 @@ AC_PROG_RANLIB PKG_CHECK_MODULES(SOLIPA, [gobject-2.0 >= 2.24.0 glib-2.0 >= 2.24.0 libgdaex >= 0.2.2 + libgtkform >= 0.1.4 camel-provider-1.2 >= 2.24 gtk+-2.0 >= 2.20 gio-2.0 >= 2.24]) diff --git a/src/allegato.c b/src/allegato.c index a99298f..5d1dc9a 100644 --- a/src/allegato.c +++ b/src/allegato.c @@ -22,6 +22,13 @@ #include <sql-parser/gda-sql-parser.h> +#include <libgtkform/field.h> +#include <libgtkform/fielddatetime.h> +#include <libgtkform/fieldinteger.h> +#include <libgtkform/fieldtext.h> +#include <libgtkform/widget.h> +#include <libgtkform/widgetentry.h> + #include "allegato.h" static void solipa_allegato_class_init (SolipaAllegatoClass *class); @@ -322,6 +329,64 @@ solipa_allegato_salva_in_db (GdaConnection *gda_con, const gchar *sql, return TRUE; } +void solipa_allegato_add_to_gtkform (SolipaAllegato *solipa_allegato, GtkForm *form, + const gchar *percorso_field, + const gchar *data_field, + const gchar *dimensione_field) +{ + SolipaAllegatoPrivate *priv; + + GtkFormWidget *wentry; + GtkFormField *ftext; + GtkFormField *fdatetime; + GtkFormField *fint; + + g_return_if_fail (IS_SOLIPA_ALLEGATO (solipa_allegato)); + g_return_if_fail (IS_GTK_FORM (form)); + g_return_if_fail (percorso_field != NULL); + + priv = SOLIPA_ALLEGATO_GET_PRIVATE (solipa_allegato); + + wentry = gtk_form_widget_entry_new (); + gtk_form_widget_set_from_gtkbuilder (wentry, priv->gtkbuilder, "entry42"); + + ftext = gtk_form_field_text_new (); + g_object_set (ftext, + "field", percorso_field, + "obligatory", TRUE, + "form-widget", wentry, + NULL); + gtk_form_add_field (form, ftext); + + if (data_field != NULL) + { + wentry = gtk_form_widget_entry_new (); + gtk_form_widget_set_from_gtkbuilder (wentry, priv->gtkbuilder, "entry44"); + + fdatetime = gtk_form_field_datetime_new (); + g_object_set (fdatetime, + "field", data_field, + "form-widget", wentry, + "type", GTK_FORM_FIELD_DATETIME_TYPE_DATETIME, + "display-format", "%d/%m/%Y %H.%M.%S", + NULL); + gtk_form_add_field (form, fdatetime); + } + + if (dimensione_field != NULL) + { + wentry = gtk_form_widget_entry_new (); + gtk_form_widget_set_from_gtkbuilder (wentry, priv->gtkbuilder, "entry45"); + + fint = gtk_form_field_integer_new (); + g_object_set (fint, + "field", dimensione_field, + "form-widget", wentry, + NULL); + gtk_form_add_field (form, fint); + } +} + /* PRIVATE */ static void solipa_allegato_set_property (GObject *object, diff --git a/src/allegato.h b/src/allegato.h index 46a7621..5a37afa 100644 --- a/src/allegato.h +++ b/src/allegato.h @@ -23,6 +23,7 @@ #include <glib-object.h> #include <libgda/libgda.h> +#include <libgtkform/form.h> #include "solipa.h" @@ -64,6 +65,11 @@ const gchar *solipa_allegato_get_data (SolipaAllegato *solipa_allegato); guint solipa_allegato_get_dimensione (SolipaAllegato *solipa_allegato); gboolean solipa_allegato_get_salva_in_db (SolipaAllegato *solipa_allegato); +void solipa_allegato_add_to_gtkform (SolipaAllegato *solipa_allegato, GtkForm *form, + const gchar *percorso_field, + const gchar *data_field, + const gchar *dimensione_field); + void solipa_allegato_apri_allegato (GtkWindow *transient, const gchar *filename); gboolean solipa_allegato_salva_in_db (GdaConnection *gda_con, const gchar *sql,