]> saetta.ns0.it Git - solipa/libsolipa/commitdiff
Aggiunte le funzioni Solipa::gdatetime_to_tm e Solipa::gtk_tree_model_get_value_gdate...
authorAndrea Zagli <a.zagli@comune.scandicci.fi.it>
Mon, 4 Jul 2011 10:18:25 +0000 (12:18 +0200)
committerAndrea Zagli <a.zagli@comune.scandicci.fi.it>
Mon, 4 Jul 2011 10:18:25 +0000 (12:18 +0200)
src/utils.c
src/utils.h

index 69347dfc74ca813abe1506a44d0fb11c0650226c..63cb7fade0fdaac41cbeec7b7c790253fdd89183 100644 (file)
@@ -29,9 +29,6 @@
 #include <gio/gio.h>
 #include <gtk/gtk.h>
 
-#include <libgdaex/libgdaex.h>
-#include <libgtkform/fielddatetime.h>
-
 #include "solipa.h"
 #include "utils.h"
 
@@ -661,6 +658,22 @@ GDateTime
        return ret;
 }
 
+struct tm
+*solipa_gdatetime_to_tm (GDateTime *gdatetime)
+{
+       struct tm *ret;
+
+       ret = g_new0 (struct tm, 1);
+       ret->tm_year = g_date_time_get_year (gdatetime) - 1900;
+       ret->tm_mon = g_date_time_get_month (gdatetime) - 1;
+       ret->tm_mday = g_date_time_get_day_of_week (gdatetime);
+       ret->tm_hour = g_date_time_get_hour (gdatetime);
+       ret->tm_min = g_date_time_get_minute (gdatetime);
+       ret->tm_sec = g_date_time_get_second (gdatetime);
+
+       return ret;
+}
+
 const gchar
 *solipa_tm_to_sql (struct tm *tm_data, const gchar *format)
 {
@@ -927,11 +940,24 @@ struct tm
 *solipa_gtk_tree_model_get_value_tm (GtkTreeModel *model, GtkTreeIter *iter, gint column, const gchar *format)
 {
        struct tm *ret;
+       GDateTime *dt;
+
+       dt = solipa_gtk_tree_model_get_value_gdatetime (model, iter, column, format);
+
+       ret = solipa_gdatetime_to_tm (dt);
+
+       return ret;
+}
+
+GDateTime
+*solipa_gtk_tree_model_get_value_gdatetime (GtkTreeModel *model, GtkTreeIter *iter, gint column, const gchar *format)
+{
+       GDateTime *ret;
        const gchar *value;
 
        value = solipa_gtk_tree_model_get_value_string (model, iter, column);
 
-       ret = gtk_form_field_datetime_get_tm_from_str (value, format);
+       ret = solipa_get_gdatetime_from_string (value, format);
 
        return ret;
 }
index 3e283e06a9d2af3526cc9aabbe04af24c395a975..0bf506de4620e504097738ab37a8bcd68695b1f9 100644 (file)
@@ -59,6 +59,7 @@ struct tm *solipa_get_now_tm (void);
 GDate *solipa_get_today_gdate (void);
 
 GDateTime *solipa_tm_to_gdatetime (struct tm *tm_data);
+struct tm *solipa_gdatetime_to_tm (GDateTime *gdatetime);
 const gchar *solipa_tm_to_sql (struct tm *tm_data, const gchar *format);
 
 GDateTime *solipa_get_gdatetime_from_string (const gchar *string, const gchar *format);
@@ -70,6 +71,7 @@ gint solipa_gtk_tree_model_get_value_integer (GtkTreeModel *model, GtkTreeIter *
 gdouble solipa_gtk_tree_model_get_value_double (GtkTreeModel *model, GtkTreeIter *iter, gint column);
 const gchar *solipa_gtk_tree_model_get_value_double_sql (GtkTreeModel *model, GtkTreeIter *iter, gint column);
 struct tm *solipa_gtk_tree_model_get_value_tm (GtkTreeModel *model, GtkTreeIter *iter, gint column, const gchar *format);
+GDateTime *solipa_gtk_tree_model_get_value_gdatetime (GtkTreeModel *model, GtkTreeIter *iter, gint column, const gchar *format);
 
 gboolean solipa_chk_codice_fiscale (const gchar *codice_fiscale, gboolean empty_good);
 gboolean solipa_chk_partita_iva (const gchar *partita_iva, gboolean empty_good);