]> saetta.ns0.it Git - solipa/libsolipa/commitdiff
Aggiunta la funzione Solipa::gtk_tree_model_get_value_boolean.
authorAndrea Zagli <azagli@libero.it>
Sat, 19 May 2018 08:13:47 +0000 (10:13 +0200)
committerAndrea Zagli <azagli@libero.it>
Sat, 19 May 2018 08:13:47 +0000 (10:13 +0200)
src/utils.c
src/utils.h

index 993f9cb1446420958e729dd08aed2db7073ba8a4..b4ddc69c52ea7ce88c15448a631c36e678faac38 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2017 Andrea Zagli <azagli@libero.it>
+ * Copyright (C) 2010-2018 Andrea Zagli <azagli@libero.it>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -955,6 +955,38 @@ const gchar
        return ret;
 }
 
+gboolean
+solipa_gtk_tree_model_get_value_boolean (GtkTreeModel *model, GtkTreeIter *iter, gint column)
+{
+       gboolean ret;
+       GValue *gval;
+
+       ret = FALSE;
+
+       gval = g_new0 (GValue, 1);
+       gtk_tree_model_get_value (model, iter, column, gval);
+
+       if (G_VALUE_HOLDS_BOOLEAN (gval))
+               {
+                       ret = g_value_get_boolean (gval);
+               }
+       else if (G_VALUE_HOLDS_INT (gval))
+               {
+                       ret = (g_value_get_int (gval) == 0 ? FALSE : TRUE);
+               }
+       else if (G_VALUE_HOLDS_UINT (gval))
+               {
+                       ret = ((gint)g_value_get_uint (gval) == 0 ? FALSE : TRUE);
+               }
+       else if (G_VALUE_HOLDS_STRING (gval))
+               {
+                       ret = zak_utils_string_to_boolean (g_value_get_string (gval));
+               }
+       g_value_unset (gval);
+
+       return ret;
+}
+
 struct tm
 *solipa_gtk_tree_model_get_value_tm (GtkTreeModel *model, GtkTreeIter *iter, gint column, const gchar *format)
 {
index d80b10f1019ede12d8df6493b1a468ba0ba53d75..51a279c022903c3f015093d4b7b405c850195ef3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2010-2015 Andrea Zagli <azagli@libero.it>
+ * Copyright (C) 2010-2018 Andrea Zagli <azagli@libero.it>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -100,6 +100,7 @@ const gchar *solipa_gtk_tree_model_get_value_string (GtkTreeModel *model, GtkTre
 gint solipa_gtk_tree_model_get_value_integer (GtkTreeModel *model, GtkTreeIter *iter, gint column);
 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);
+gboolean solipa_gtk_tree_model_get_value_boolean (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);