[libgda] Fixed Gda-ui Vala bindings generation. Fixed Vala bindings installation. * Using $(datadir)/vala/vap



commit 34602bcebd637c8da08dfa95589334743eabb260
Author: Daniel Espinosa <esodan gmail com>
Date:   Fri Nov 2 18:48:37 2012 -0600

    Fixed Gda-ui Vala bindings generation. Fixed Vala bindings installation.
    * Using $(datadir)/vala/vapi to install bindings
    * Fixed vala.m4 macros to add a system wide installation for bindings
    * Fixed Gda-ui bindings generation for bug 687481
    * Deprecate gdaui_combo_set_model due to problems with bindings
    * Added gdaui_combo_set_data a more bindings friendly function
    * Deprecate gdaui_tree_store_get_iter due to problems with bindings
    * Added gdaui_tree_store_get_iter_from_node a more bindings friendly function

 libgda-ui/Gdaui-5.0.metadata |    3 ++-
 libgda-ui/Makefile.am        |    4 ++--
 libgda-ui/gdaui-combo.c      |   26 +++++++++++++++++++++++++-
 libgda-ui/gdaui-combo.h      |    1 +
 libgda-ui/gdaui-tree-store.c |   24 ++++++++++++++++++++++--
 libgda-ui/gdaui-tree-store.h |   13 +++++++------
 libgda/Makefile.am           |    2 +-
 m4/vapigen.m4                |    9 ++++++++-
 8 files changed, 68 insertions(+), 14 deletions(-)
---
diff --git a/libgda-ui/Gdaui-5.0.metadata b/libgda-ui/Gdaui-5.0.metadata
index b1db090..64d4ff3 100644
--- a/libgda-ui/Gdaui-5.0.metadata
+++ b/libgda-ui/Gdaui-5.0.metadata
@@ -1 +1,2 @@
-# Gda-ui metadata
+// Gda UI metadata
+Combo.set_model name="set_data"
diff --git a/libgda-ui/Makefile.am b/libgda-ui/Makefile.am
index 03da35b..e66331b 100644
--- a/libgda-ui/Makefile.am
+++ b/libgda-ui/Makefile.am
@@ -250,9 +250,9 @@ if ENABLE_GDAUI_VALA
 vapi: libgdaui-5.0.vapi
 
 libgdaui-5.0.vapi: Gdaui-5.0.gir
-	$(VAPIGEN) --metadatadir=$(top_srcdir)/libgda-ui --vapidir=$(top_srcdir)/libgda --girdir=$(top_srcdir)/libgda --library=libgda-ui-5.0 --pkg=libxml-2.0 --pkg=libgda-5.0 Gdaui-5.0.gir
+	$(VAPIGEN) --metadatadir=$(top_srcdir)/libgda-ui --vapidir=$(top_srcdir)/libgda --girdir=$(top_srcdir)/libgda --library=libgdaui-5.0 --pkg=libxml-2.0 --pkg=libgda-5.0 --pkg=gio-2.0 --pkg=atk --pkg=gtk+-3.0 Gdaui-5.0.gir
 
-vapidir = $(VAPIGEN_VAPIDIR)
+vapidir = $(VAPIDIR)
 vapi_DATA=libgdaui-5.0.vapi
 
 EXTRA_DIST += \
diff --git a/libgda-ui/gdaui-combo.c b/libgda-ui/gdaui-combo.c
index 8d82bd9..b588069 100644
--- a/libgda-ui/gdaui-combo.c
+++ b/libgda-ui/gdaui-combo.c
@@ -357,7 +357,7 @@ static void cell_layout_data_func (GtkCellLayout *cell_layout, GtkCellRenderer *
 				   GtkTreeModel *tree_model, GtkTreeIter *iter, GdauiCombo *combo);
 
 /**
- * gdaui_combo_set_model:
+ * gdaui_combo_set_model: (skip)
  * @combo: a #GdauiCombo widget.
  * @model: a #GdaDataModel object.
  * @n_cols: number of columns in the model to be shown
@@ -371,10 +371,34 @@ static void cell_layout_data_func (GtkCellLayout *cell_layout, GtkCellRenderer *
  * if @n_cols is %0, then all the columns of @model will be displayed in @combo.
  *
  * Since: 4.2
+ *
+ * Deprecated: 5.2
  */
 void
 gdaui_combo_set_model (GdauiCombo *combo, GdaDataModel *model, gint n_cols, gint *cols_index)
 {
+	gdaui_combo_set_data (combo, model, n_cols, cols_index);
+}
+
+/**
+ * gdaui_combo_set_data:
+ * @combo: a #GdauiCombo widget.
+ * @model: a #GdaDataModel object to get data from.
+ * @n_cols: number of columns in the model to be shown
+ * @cols_index: (array length=n_cols): an array of columns to be shown, its size must be @n_cols
+ *
+ * Makes @combo display data stored in @model (makes the
+ * combo widget refresh its list of values and display the values contained
+ * in the model). A NULL @model will make the combo empty
+ * and disassociate the previous model, if any.
+ *
+ * if @n_cols is %0, then all the columns of @model will be displayed in @combo.
+ *
+ * Since: 5.2
+ */
+void
+gdaui_combo_set_data (GdauiCombo *combo, GdaDataModel *model, gint n_cols, gint *cols_index)
+{
 	gint ln_cols, model_ncols = -1;
 	gint *lcols_index;
 	
diff --git a/libgda-ui/gdaui-combo.h b/libgda-ui/gdaui-combo.h
index fc5999f..e1ad3f9 100644
--- a/libgda-ui/gdaui-combo.h
+++ b/libgda-ui/gdaui-combo.h
@@ -59,6 +59,7 @@ GtkWidget    *gdaui_combo_new              (void);
 GtkWidget    *gdaui_combo_new_with_model   (GdaDataModel *model, gint n_cols, gint *cols_index);
 
 void          gdaui_combo_set_model        (GdauiCombo *combo, GdaDataModel *model, gint n_cols, gint *cols_index);
+void					gdaui_combo_set_data				 (GdauiCombo *combo, GdaDataModel *model, gint n_cols, gint *cols_index);
 void          gdaui_combo_add_null         (GdauiCombo *combo, gboolean add_null);
 gboolean      gdaui_combo_is_null_selected (GdauiCombo *combo);
 
diff --git a/libgda-ui/gdaui-tree-store.c b/libgda-ui/gdaui-tree-store.c
index 9ee5414..2104009 100644
--- a/libgda-ui/gdaui-tree-store.c
+++ b/libgda-ui/gdaui-tree-store.c
@@ -519,9 +519,8 @@ gdaui_tree_store_get_node (GdauiTreeStore *store, GtkTreeIter *iter)
 	return node;
 }
 
-
 /**
- * gdaui_tree_store_get_iter:
+ * gdaui_tree_store_get_iter: (skip)
  * @store: a #GdauiTreeStore object
  * @iter: a pointer to a #GtkTreeIter
  * @node: a #GdaTreeNode in @store
@@ -531,10 +530,31 @@ gdaui_tree_store_get_node (GdauiTreeStore *store, GtkTreeIter *iter)
  * Returns: %TRUE if no error occurred and @iter is valid
  *
  * Since: 4.2.8
+ *
+ * Deprecated: 5.2
  */
 gboolean
 gdaui_tree_store_get_iter (GdauiTreeStore *store, GtkTreeIter *iter, GdaTreeNode *node)
 {
+	gdaui_tree_store_get_iter_from_node (store, iter, node);
+}
+
+
+/**
+ * gdaui_tree_store_get_iter_from_node:
+ * @store: a #GdauiTreeStore object
+ * @iter: a #GtkTreeIter
+ * @node: a #GdaTreeNode in @store
+ *
+ * Sets @iter to represent @node in the tree.
+ *
+ * Returns: %TRUE if no error occurred and @iter is valid
+ *
+ * Since: 5.2
+ */
+gboolean
+gdaui_tree_store_get_iter_from_node (GdauiTreeStore *store, GtkTreeIter *iter, GdaTreeNode *node)
+{
 	g_return_val_if_fail (GDAUI_IS_TREE_STORE (store), FALSE);
 	g_return_val_if_fail (GDA_IS_TREE_NODE (node), FALSE);
 
diff --git a/libgda-ui/gdaui-tree-store.h b/libgda-ui/gdaui-tree-store.h
index 4aa8523..41cfb5f 100644
--- a/libgda-ui/gdaui-tree-store.h
+++ b/libgda-ui/gdaui-tree-store.h
@@ -74,13 +74,14 @@ struct _GdauiTreeStoreClass
  * signal and update the requested children.
  */
 
-GType           gdaui_tree_store_get_type  (void) G_GNUC_CONST;
+GType           gdaui_tree_store_get_type 					(void) G_GNUC_CONST;
 
-GtkTreeModel   *gdaui_tree_store_new       (GdaTree *tree, guint n_columns, ...);
-GtkTreeModel   *gdaui_tree_store_newv      (GdaTree *tree, guint n_columns,
-					    GType *types, const gchar **attribute_names);
-GdaTreeNode    *gdaui_tree_store_get_node  (GdauiTreeStore *store, GtkTreeIter *iter);
-gboolean        gdaui_tree_store_get_iter  (GdauiTreeStore *store, GtkTreeIter *iter, GdaTreeNode *node);
+GtkTreeModel   *gdaui_tree_store_new       					(GdaTree *tree, guint n_columns, ...);
+GtkTreeModel   *gdaui_tree_store_newv      					(GdaTree *tree, guint n_columns,
+					    			GType *types, const gchar **attribute_names);
+GdaTreeNode    *gdaui_tree_store_get_node  					(GdauiTreeStore *store, GtkTreeIter *iter);
+gboolean        gdaui_tree_store_get_iter  					(GdauiTreeStore *store, GtkTreeIter *iter, GdaTreeNode *node);
+gboolean				gdaui_tree_store_get_iter_from_node (GdauiTreeStore *store, GtkTreeIter *iter, GdaTreeNode *node);
 
 G_END_DECLS
 
diff --git a/libgda/Makefile.am b/libgda/Makefile.am
index edad379..68c4218 100644
--- a/libgda/Makefile.am
+++ b/libgda/Makefile.am
@@ -373,7 +373,7 @@ vapi: libgda-5.0.vapi
 libgda-5.0.vapi: Gda-5.0.gir
 	$(VAPIGEN) --metadatadir=$(top_srcdir)/libgda --library libgda-5.0 --pkg libxml-2.0 Gda-5.0.gir
 
-vapidir = $(VAPIGEN_VAPIDIR)
+vapidir = $(VAPIDIR)
 vapi_DATA=libgda-5.0.vapi
 
 EXTRA_DIST += \
diff --git a/m4/vapigen.m4 b/m4/vapigen.m4
index bcbccb6..7a0f1b8 100644
--- a/m4/vapigen.m4
+++ b/m4/vapigen.m4
@@ -79,6 +79,7 @@ m4_define([_VAPIGEN_CHECK_INTERNAL],
 		  [yes], [
 		      VAPIGEN=`$PKG_CONFIG --variable=vapigen vapigen`
 		      VAPIGEN_MAKEFILE=`$PKG_CONFIG --variable=datadir vapigen`/vala/Makefile.vapigen
+		      VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen`
 		      AS_IF([ test "x$2" = "x"], [
 		          VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen`
 		        ], [
@@ -102,8 +103,13 @@ m4_define([_VAPIGEN_CHECK_INTERNAL],
 						AC_MSG_CHECKING([for $vala_pkg])
 		        PKG_CHECK_EXISTS([$vala_pkg], [
 		            VALA_DATADIR=`pkg-config $vala_pkg --variable=datadir`
-                VAPIGEN_VAPIDIR="$VALA_DATADIR/vala/vapi"
+                VAPIDIR="$VALA_DATADIR/vala/vapi"
                 VAPIGEN_MAKEFILE="$VALA_DATADIR/vala/Makefile.vapigen"
+                AS_IF([ test "x$2" = "x"], [
+						      VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen`
+						    ], [
+						      VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir_versioned vapigen`
+						    ])
                 vapigen_pkg_found=yes
 		          ], [
 		            AS_CASE([$enable_vala], [yes], [
@@ -121,6 +127,7 @@ m4_define([_VAPIGEN_CHECK_INTERNAL],
 	])
 	AC_SUBST([VAPIGEN])
 	AC_SUBST([VAPIGEN_VAPIDIR])
+	AC_SUBST([VAPIDIR])
 	AC_SUBST([VAPIGEN_MAKEFILE])
 
 	AM_CONDITIONAL(ENABLE_VAPIGEN, test "x$vapigen_pkg_found" = "xyes")



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]