libgda r3293 - in trunk: . doc/C doc/C/tmpl libgda libgda/sql-parser
- From: vivien svn gnome org
- To: svn-commits-list gnome org
- Subject: libgda r3293 - in trunk: . doc/C doc/C/tmpl libgda libgda/sql-parser
- Date: Fri, 23 Jan 2009 15:53:09 +0000 (UTC)
Author: vivien
Date: Fri Jan 23 15:53:09 2009
New Revision: 3293
URL: http://svn.gnome.org/viewvc/libgda?rev=3293&view=rev
Log:
2009-01-23 Vivien Malerba <malerba gnome-db org>
* documentation fixes, see bugs #568731 and #561178.
Modified:
trunk/ChangeLog
trunk/doc/C/gettingstarted.xml
trunk/doc/C/tmpl/gda-meta-struct.sgml
trunk/doc/C/tmpl/gda-sql-parser.sgml
trunk/doc/C/tmpl/gda-util.sgml
trunk/doc/C/tmpl/gda-value.sgml
trunk/libgda/gda-batch.c
trunk/libgda/gda-column.c
trunk/libgda/gda-config.c
trunk/libgda/gda-connection.c
trunk/libgda/gda-data-access-wrapper.c
trunk/libgda/gda-data-model-bdb.c
trunk/libgda/gda-data-model-dir.c
trunk/libgda/gda-data-model-import.c
trunk/libgda/gda-data-model-iter.c
trunk/libgda/gda-data-model.c
trunk/libgda/gda-data-proxy.c
trunk/libgda/gda-data-select.c
trunk/libgda/gda-holder.c
trunk/libgda/gda-meta-store.c
trunk/libgda/gda-row.c
trunk/libgda/gda-server-operation.c
trunk/libgda/gda-set.c
trunk/libgda/gda-set.h
trunk/libgda/gda-statement.c
trunk/libgda/gda-util.c
trunk/libgda/gda-util.h
trunk/libgda/sql-parser/gda-sql-parser.c
Modified: trunk/doc/C/gettingstarted.xml
==============================================================================
--- trunk/doc/C/gettingstarted.xml (original)
+++ trunk/doc/C/gettingstarted.xml Fri Jan 23 15:53:09 2009
@@ -105,9 +105,35 @@
</para>
<para>
- A <link linkend="GdaStatement">GdaStatement</link> object can contain variables, and a value needs to be assigned to
- each one before the query can be run; the same query object can then be run as a prepared statement, only binding
- variables each time.
+ &LIBGDA; can execute any SQL understood by the database to which a connection is opened, even SQL code containing
+ extensions specific to a database.
+ </para>
+ <para>
+ When creating an SQL string which contains values (literals), one can be tempted (as it is the easiest solution) to
+ create a string containing the values themselves, execute that statement and apply the same process the next time the same
+ statement needs to be executed with different values. This approach has two major flaws outlined below which is why &LIBGDA;
+ recommends using variables in statements (also known as parameters or place holders) and reusing the same
+ <link linkend="GdaStatement">GdaStatement</link> object when only the variable's values change. The flaws are:
+ <itemizedlist>
+ <listitem>
+ <para>The performances of the resulting application are not optimized because the database needs to parse the SQL
+ string each time and build its own internal representation of the statement, execute the statement using its
+ internal representation, then discard that internal representation. Using variables and reusing the same statement,
+ the database only parses once the SQL statement, builds its internal representation, and reuses it everytime
+ the statement is executed.
+ </para>
+ </listitem>
+ <listitem>
+ <para>Literals in SQL strings are an open invitation to SQL injection problems. Using variables prevents SQL injection.
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ <para>
+ Because each database has its own way of representing variables in an SQL string, and because those ways of representing
+ variables don't contain enough information (it is usually impossible to specify the expected type for a variable for example)
+ &LIBGDA; has defined a standard way of defining them, and translates it into the syntax understood by the database when
+ needed. For more information about that syntax, see the <link linkend="GdaSqlParser.description">GdaSqlParser's object description</link>.
</para>
<para>
GdaStatement objects can be created by:
Modified: trunk/doc/C/tmpl/gda-meta-struct.sgml
==============================================================================
--- trunk/doc/C/tmpl/gda-meta-struct.sgml (original)
+++ trunk/doc/C/tmpl/gda-meta-struct.sgml Fri Jan 23 15:53:09 2009
@@ -107,13 +107,13 @@
<!-- ##### ENUM GdaMetaStructFeature ##### -->
<para>
-
+ Controls which features are computed about database objects.
</para>
- GDA_META_STRUCT_FEATURE_NONE:
- GDA_META_STRUCT_FEATURE_FOREIGN_KEYS:
- GDA_META_STRUCT_FEATURE_VIEW_DEPENDENCIES:
- GDA_META_STRUCT_FEATURE_ALL:
+ GDA_META_STRUCT_FEATURE_NONE: database objects only have their own attributes
+ GDA_META_STRUCT_FEATURE_FOREIGN_KEYS: foreign keys are computed for tables
+ GDA_META_STRUCT_FEATURE_VIEW_DEPENDENCIES: for views, the tables they use are also computed
+ GDA_META_STRUCT_FEATURE_ALL: all the features are computed
<!-- ##### ENUM GdaMetaStructError ##### -->
<para>
@@ -126,12 +126,12 @@
<!-- ##### ENUM GdaMetaDbObjectType ##### -->
<para>
-
+ Type of database object represented by a #GdaMetaDbObject structure
</para>
- GDA_META_DB_UNKNOWN:
- GDA_META_DB_TABLE:
- GDA_META_DB_VIEW:
+ GDA_META_DB_UNKNOWN: unknown type, we only know the object exists
+ GDA_META_DB_TABLE: the object is a table
+ GDA_META_DB_VIEW: the object is a view
<!-- ##### STRUCT GdaMetaDbObject ##### -->
<para>
Modified: trunk/doc/C/tmpl/gda-sql-parser.sgml
==============================================================================
--- trunk/doc/C/tmpl/gda-sql-parser.sgml (original)
+++ trunk/doc/C/tmpl/gda-sql-parser.sgml Fri Jan 23 15:53:09 2009
@@ -59,14 +59,16 @@
<![CDATA[##]]> and the <![CDATA[/* ... */]]>.
</para></listitem>
</itemizedlist>
-Examples of correct place holders definitions are:
+Note that the type string must be a type recognized by the
+<link linkend="gda-g-type-from-string">gda_g_type_from_string()</link> function (all valid GType names
+plus a few synonyms). Examples of correct place holders definitions are:
<programlisting>
## /* name:"+0" type:gchararray */
## /* name:'-5' type:string */
## /*name:myvar type:gint descr:ToBeDefined nullok:FALSE*/
-## /*name:myvar type:gint descr:"A long description"*/
-##+0::gcharaccar
-##-5::string
+## /*name:myvar type:int descr:"A long description"*/
+##+0::gchararray
+##-5::timestamp
</programlisting>
</para>
Modified: trunk/doc/C/tmpl/gda-util.sgml
==============================================================================
--- trunk/doc/C/tmpl/gda-util.sgml (original)
+++ trunk/doc/C/tmpl/gda-util.sgml Fri Jan 23 15:53:09 2009
@@ -78,7 +78,7 @@
</para>
@cnc:
- text:
+ sql:
@start:
@end:
@Returns:
Modified: trunk/doc/C/tmpl/gda-value.sgml
==============================================================================
--- trunk/doc/C/tmpl/gda-value.sgml (original)
+++ trunk/doc/C/tmpl/gda-value.sgml Fri Jan 23 15:53:09 2009
@@ -536,8 +536,8 @@
</para>
@year: representation of the date
- month: month representation of the date, as a number between 1 and 12
- day: day representation of the date, as a number between 1 and 31
+ month: month representation of the date, as a number between 1 and 12
+ day: day representation of the date, as a number between 1 and 31
@hour:
@minute:
@second:
Modified: trunk/libgda/gda-batch.c
==============================================================================
--- trunk/libgda/gda-batch.c (original)
+++ trunk/libgda/gda-batch.c Fri Jan 23 15:53:09 2009
@@ -105,6 +105,13 @@
GObjectClass *object_class = G_OBJECT_CLASS (klass);
parent_class = g_type_class_peek_parent (klass);
+ /**
+ * GdaBatch::changed
+ * @batch: the #GdaBatch object
+ * @changed_stmt: the statement which has been changed
+ *
+ * Gets emitted whenever a #GdaStatement in the @batch object changes
+ */
gda_batch_signals[CHANGED] =
g_signal_new ("changed",
G_TYPE_FROM_CLASS (object_class),
Modified: trunk/libgda/gda-column.c
==============================================================================
--- trunk/libgda/gda-column.c (original)
+++ trunk/libgda/gda-column.c Fri Jan 23 15:53:09 2009
@@ -87,6 +87,13 @@
parent_class = g_type_class_peek_parent (klass);
/* signals */
+ /**
+ * GdaColumn::name-changed
+ * @column: the #GdaColumn object
+ * @old_name: the column's previous name
+ *
+ * Gets emitted whenever @column's name has been changed
+ */
gda_column_signals[NAME_CHANGED] =
g_signal_new ("name-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -96,6 +103,14 @@
g_cclosure_marshal_VOID__STRING,
G_TYPE_NONE,
1, G_TYPE_STRING);
+ /**
+ * GdaColumn::g-type-changed
+ * @column: the #GdaColumn object
+ * @old_type: the column's previous type
+ * @new_type: the column's new type
+ *
+ * Gets emitted whenever @column's type has been changed
+ */
gda_column_signals[GDA_TYPE_CHANGED] =
g_signal_new ("g-type-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -111,7 +126,9 @@
object_class->get_property = gda_column_get_property;
g_object_class_install_property (object_class, PROP_ID,
- g_param_spec_string ("id", NULL, NULL,
+ g_param_spec_string ("id", NULL,
+ "Column's Id (warning: the column's ID is not "
+ "guaranteed to be unique in a GdaDataModel)",
NULL, G_PARAM_WRITABLE | G_PARAM_READABLE));
object_class->finalize = gda_column_finalize;
Modified: trunk/libgda/gda-config.c
==============================================================================
--- trunk/libgda/gda-config.c (original)
+++ trunk/libgda/gda-config.c Fri Jan 23 15:53:09 2009
@@ -134,6 +134,13 @@
parent_class = g_type_class_peek_parent (klass);
+ /**
+ * GdaConfig::dsn-added
+ * @conf: the #GdaConfig object
+ * @new_dsn: a #GdaDsnInfo
+ *
+ * Gets emitted whenever a new DSN has been defined
+ */
gda_config_signals[DSN_ADDED] =
g_signal_new ("dsn-added",
G_TYPE_FROM_CLASS (object_class),
@@ -142,6 +149,13 @@
NULL, NULL,
_gda_marshal_VOID__POINTER,
G_TYPE_NONE, 1, G_TYPE_POINTER);
+ /**
+ * GdaConfig::dsn-to-be-removed
+ * @conf: the #GdaConfig object
+ * @old_dsn: a #GdaDsnInfo
+ *
+ * Gets emitted whenever a DSN is about to be removed
+ */
gda_config_signals[DSN_TO_BE_REMOVED] =
g_signal_new ("dsn-to-be-removed",
G_TYPE_FROM_CLASS (object_class),
@@ -150,6 +164,13 @@
NULL, NULL,
_gda_marshal_VOID__POINTER,
G_TYPE_NONE, 1, G_TYPE_POINTER);
+ /**
+ * GdaConfig::dsn-removed
+ * @conf: the #GdaConfig object
+ * @old_dsn: a #GdaDsnInfo
+ *
+ * Gets emitted whenever a DSN has been removed
+ */
gda_config_signals[DSN_REMOVED] =
g_signal_new ("dsn-removed",
G_TYPE_FROM_CLASS (object_class),
@@ -158,6 +179,13 @@
NULL, NULL,
_gda_marshal_VOID__POINTER,
G_TYPE_NONE, 1, G_TYPE_POINTER);
+ /**
+ * GdaConfig::dsn-changed
+ * @conf: the #GdaConfig object
+ * @dsn: a #GdaDsnInfo
+ *
+ * Gets emitted whenever a DSN's definition has been changed
+ */
gda_config_signals[DSN_CHANGED] =
g_signal_new ("dsn-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -173,13 +201,15 @@
/* To translators: DSN stands for Data Source Name, it's a named connection string defined in ~/.libgda/config */
g_object_class_install_property (object_class, PROP_USER_FILE,
- g_param_spec_string ("user-filename", _("File to use for per-user DSN list"),
- NULL, NULL,
+ g_param_spec_string ("user-filename", NULL,
+ "File to use for per-user DSN list",
+ NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
/* To translators: DSN stands for Data Source Name, it's a named connection string defined in $PREFIX/etc/libgda-4.0/config */
g_object_class_install_property (object_class, PROP_USER_FILE,
- g_param_spec_string ("system-filename", _("File to use for system-wide DSN list"),
- NULL, NULL,
+ g_param_spec_string ("system-filename", NULL,
+ "File to use for system-wide DSN list",
+ NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
object_class->constructor = gda_config_constructor;
Modified: trunk/libgda/gda-connection.c
==============================================================================
--- trunk/libgda/gda-connection.c (original)
+++ trunk/libgda/gda-connection.c Fri Jan 23 15:53:09 2009
@@ -131,6 +131,14 @@
parent_class = g_type_class_peek_parent (klass);
+ /**
+ * GdaConnection::error
+ * @cnc: the #GdaConnection
+ * @event: a #GdaConnectionEvent object
+ *
+ * Gets emitted whenever a connection event occurs. Chech the nature of @event to
+ * see if it's an error or a simple notification
+ */
gda_connection_signals[ERROR] =
g_signal_new ("error",
G_TYPE_FROM_CLASS (object_class),
@@ -139,6 +147,12 @@
NULL, NULL,
g_cclosure_marshal_VOID__OBJECT,
G_TYPE_NONE, 1, GDA_TYPE_CONNECTION_EVENT);
+ /**
+ * GdaConnection::conn-opened
+ * @cnc: the #GdaConnection
+ *
+ * Gets emitted when the connection has been opened to the database
+ */
gda_connection_signals[CONN_OPENED] =
g_signal_new ("conn-opened",
G_TYPE_FROM_CLASS (object_class),
@@ -147,6 +161,12 @@
NULL, NULL,
_gda_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ /**
+ * GdaConnection::conn-to-close
+ * @cnc: the #GdaConnection
+ *
+ * Gets emitted when the connection to the database is about to be closed
+ */
gda_connection_signals[CONN_TO_CLOSE] =
g_signal_new ("conn-to-close",
G_TYPE_FROM_CLASS (object_class),
@@ -155,6 +175,12 @@
NULL, NULL,
_gda_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ /**
+ * GdaConnection::conn-closed
+ * @cnc: the #GdaConnection
+ *
+ * Gets emitted when the connection to the database has been closed
+ */
gda_connection_signals[CONN_CLOSED] = /* runs after user handlers */
g_signal_new ("conn-closed",
G_TYPE_FROM_CLASS (object_class),
@@ -163,6 +189,12 @@
NULL, NULL,
_gda_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ /**
+ * GdaConnection::dsn-changed
+ * @cnc: the #GdaConnection
+ *
+ * Gets emitted when the DSN used by @cnc has been changed
+ */
gda_connection_signals[DSN_CHANGED] =
g_signal_new ("dsn-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -171,6 +203,13 @@
NULL, NULL,
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ /**
+ * GdaConnection::transaction-status-changed
+ * @cnc: the #GdaConnection
+ *
+ * Gets emitted when the transactional status of @cnc has changed (a transaction has been
+ * started, rolled back, a savepoint added,...)
+ */
gda_connection_signals[TRANSACTION_STATUS_CHANGED] =
g_signal_new ("transaction-status-changed",
G_TYPE_FROM_CLASS (object_class),
Modified: trunk/libgda/gda-data-access-wrapper.c
==============================================================================
--- trunk/libgda/gda-data-access-wrapper.c (original)
+++ trunk/libgda/gda-data-access-wrapper.c Fri Jan 23 15:53:09 2009
@@ -134,7 +134,7 @@
object_class->set_property = gda_data_access_wrapper_set_property;
object_class->get_property = gda_data_access_wrapper_get_property;
g_object_class_install_property (object_class, PROP_MODEL,
- g_param_spec_object ("model", "Data model being worked on", NULL,
+ g_param_spec_object ("model", NULL, "Data model being wrapped",
GDA_TYPE_DATA_MODEL,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
Modified: trunk/libgda/gda-data-model-bdb.c
==============================================================================
--- trunk/libgda/gda-data-model-bdb.c (original)
+++ trunk/libgda/gda-data-model-bdb.c Fri Jan 23 15:53:09 2009
@@ -155,11 +155,11 @@
object_class->set_property = gda_data_model_bdb_set_property;
object_class->get_property = gda_data_model_bdb_get_property;
g_object_class_install_property (object_class, PROP_FILENAME,
- g_param_spec_string ("filename", "DB file", NULL, NULL,
+ g_param_spec_string ("filename", NULL, "DB file", NULL,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_DB_NAME,
- g_param_spec_string ("db-name", "Name of the database", NULL, NULL,
+ g_param_spec_string ("db-name", NULL, "Name of the database", NULL,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
Modified: trunk/libgda/gda-data-model-dir.c
==============================================================================
--- trunk/libgda/gda-data-model-dir.c (original)
+++ trunk/libgda/gda-data-model-dir.c Fri Jan 23 15:53:09 2009
@@ -197,7 +197,7 @@
object_class->set_property = gda_data_model_dir_set_property;
object_class->get_property = gda_data_model_dir_get_property;
g_object_class_install_property (object_class, PROP_BASEDIR,
- g_param_spec_string ("basedir", "Base directory", NULL, NULL,
+ g_param_spec_string ("basedir", NULL, "Base directory", NULL,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
Modified: trunk/libgda/gda-data-model-import.c
==============================================================================
--- trunk/libgda/gda-data-model-import.c (original)
+++ trunk/libgda/gda-data-model-import.c Fri Jan 23 15:53:09 2009
@@ -224,24 +224,25 @@
object_class->set_property = gda_data_model_import_set_property;
object_class->get_property = gda_data_model_import_get_property;
g_object_class_install_property (object_class, PROP_RANDOM_ACCESS,
- g_param_spec_boolean ("random-access", "Features random access", NULL,
+ g_param_spec_boolean ("random-access", NULL, "Random access to the data model "
+ "is possible",
FALSE,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_FILENAME,
- g_param_spec_string ("filename", "File to import", NULL, NULL,
+ g_param_spec_string ("filename", NULL, "File to import", NULL,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_DATA_STRING,
- g_param_spec_string ("data-string", "String to import", NULL, NULL,
+ g_param_spec_string ("data-string", NULL, "String to import", NULL,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_XML_NODE,
- g_param_spec_pointer ("xml-node", "XML node to import from", NULL,
+ g_param_spec_pointer ("xml-node", NULL, "XML node to import from",
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_OPTIONS,
- g_param_spec_object ("options", "Options to configure the import", NULL,
+ g_param_spec_object ("options", NULL, "Options to configure the import",
GDA_TYPE_SET,
G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY));
Modified: trunk/libgda/gda-data-model-iter.c
==============================================================================
--- trunk/libgda/gda-data-model-iter.c (original)
+++ trunk/libgda/gda-data-model-iter.c Fri Jan 23 15:53:09 2009
@@ -136,6 +136,13 @@
parent_class = g_type_class_peek_parent (class);
+ /**
+ * GdaDataModelIter::row-changed
+ * @iter: the #GdaDataModelIter
+ * @row: the new iter's row
+ *
+ * Gets emitted when the row @iter is currently pointing has changed
+ */
gda_data_model_iter_signals [ROW_CHANGED] =
g_signal_new ("row-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -143,6 +150,13 @@
G_STRUCT_OFFSET (GdaDataModelIterClass, row_changed),
NULL, NULL,
g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
+ /**
+ * GdaDataModelIter::end-of-data
+ * @iter: the #GdaDataModelIter
+ *
+ * Gets emitted when @iter has reached the end of available data (which means the previous
+ * row it was on was the last one).
+ */
gda_data_model_iter_signals [END_OF_DATA] =
g_signal_new ("end-of-data",
G_TYPE_FROM_CLASS (object_class),
@@ -163,17 +177,18 @@
object_class->set_property = gda_data_model_iter_set_property;
object_class->get_property = gda_data_model_iter_get_property;
g_object_class_install_property (object_class, PROP_DATA_MODEL,
- g_param_spec_object ("data-model", "Data model for which the iter is for", NULL,
+ g_param_spec_object ("data-model", NULL, "Data model for which the iter is for",
GDA_TYPE_DATA_MODEL,
(G_PARAM_READABLE | G_PARAM_WRITABLE |
G_PARAM_CONSTRUCT_ONLY)));
g_object_class_install_property (object_class, PROP_FORCED_MODEL,
- g_param_spec_object ("forced-model", NULL, NULL,
+ g_param_spec_object ("forced-model", NULL, "Overrides the data model the iter "
+ "is attached to (reserved for internal usage)",
GDA_TYPE_DATA_MODEL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_CURRENT_ROW,
- g_param_spec_int ("current-row", "Current represented row in the data model",
- NULL, -1, G_MAXINT, -1,
+ g_param_spec_int ("current-row", NULL, "Current represented row in the data model",
+ -1, G_MAXINT, -1,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_UPDATE_MODEL,
g_param_spec_boolean ("update-model", "Tells if parameters changes are forwarded "
@@ -450,7 +465,7 @@
}
case PROP_FORCED_MODEL: {
GdaDataModel* ptr = g_value_get_object (value);
- g_return_if_fail (ptr && GDA_IS_DATA_MODEL (ptr));
+ g_return_if_fail (GDA_IS_DATA_MODEL (ptr));
if (iter->priv->data_model) {
if (iter->priv->data_model == GDA_DATA_MODEL (ptr))
Modified: trunk/libgda/gda-data-model.c
==============================================================================
--- trunk/libgda/gda-data-model.c (original)
+++ trunk/libgda/gda-data-model.c Fri Jan 23 15:53:09 2009
@@ -107,6 +107,12 @@
g_static_rec_mutex_lock (&init_mutex);
if (! initialized) {
+ /**
+ * GdaDataModel::changed
+ * @model: the #GdaDataModel
+ *
+ * Gets emitted when any value in @model has been changed
+ */
gda_data_model_signals[CHANGED] =
g_signal_new ("changed",
GDA_TYPE_DATA_MODEL,
@@ -115,6 +121,13 @@
NULL, NULL,
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
+ /**
+ * GdaDataModel::row-inserted
+ * @model: the #GdaDataModel
+ * @row: the row number
+ *
+ * Gets emitted when a row has been inserted in @model
+ */
gda_data_model_signals[ROW_INSERTED] =
g_signal_new ("row-inserted",
GDA_TYPE_DATA_MODEL,
@@ -123,6 +136,13 @@
NULL, NULL,
g_cclosure_marshal_VOID__INT,
G_TYPE_NONE, 1, G_TYPE_INT);
+ /**
+ * GdaDataModel::row-updated
+ * @model: the #GdaDataModel
+ * @row: the row number
+ *
+ * Gets emitted when a row has been modified in @model
+ */
gda_data_model_signals[ROW_UPDATED] =
g_signal_new ("row-updated",
GDA_TYPE_DATA_MODEL,
@@ -131,6 +151,13 @@
NULL, NULL,
g_cclosure_marshal_VOID__INT,
G_TYPE_NONE, 1, G_TYPE_INT);
+ /**
+ * GdaDataModel::row-removed
+ * @model: the #GdaDataModel
+ * @row: the row number
+ *
+ * Gets emitted when a row has been removed from @model
+ */
gda_data_model_signals[ROW_REMOVED] =
g_signal_new ("row-removed",
GDA_TYPE_DATA_MODEL,
@@ -139,6 +166,13 @@
NULL, NULL,
g_cclosure_marshal_VOID__INT,
G_TYPE_NONE, 1, G_TYPE_INT);
+ /**
+ * GdaDataModel::reset
+ * @model: the #GdaDataModel
+ *
+ * Gets emitted when @model's contents has been completely reset (the number and
+ * type of columns may also have changed)
+ */
gda_data_model_signals[RESET] =
g_signal_new ("reset",
GDA_TYPE_DATA_MODEL,
Modified: trunk/libgda/gda-data-proxy.c
==============================================================================
--- trunk/libgda/gda-data-proxy.c (original)
+++ trunk/libgda/gda-data-proxy.c Fri Jan 23 15:53:09 2009
@@ -546,6 +546,14 @@
parent_class = g_type_class_peek_parent (klass);
/* signals */
+ /**
+ * GdaDataProxy::row-delete-changed
+ * @proxy: the #GdaDataProxy
+ * @row: the concerned @proxy's row
+ * @to_be_deleted: tells if the @row is marked to be deleted
+ *
+ * Gets emitted whenever a row has been marked to be deleted, or has been unmarked to be deleted
+ */
gda_data_proxy_signals [ROW_DELETE_CHANGED] =
g_signal_new ("row-delete-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -553,6 +561,13 @@
G_STRUCT_OFFSET (GdaDataProxyClass, row_delete_changed),
NULL, NULL,
_gda_marshal_VOID__INT_BOOLEAN, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_BOOLEAN);
+ /**
+ * GdaDataProxy::sample-size-changed
+ * @proxy: the #GdaDataProxy
+ * @sample_size: the new sample size
+ *
+ * Gets emitted whenever @proxy's sample size has been changed
+ */
gda_data_proxy_signals [SAMPLE_SIZE_CHANGED] =
g_signal_new ("sample-size-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -560,6 +575,15 @@
G_STRUCT_OFFSET (GdaDataProxyClass, sample_size_changed),
NULL, NULL,
g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
+ /**
+ * GdaDataProxy::sample-changed
+ * @proxy: the #GdaDataProxy
+ * @sample_start: the first row of the sample
+ * @sample_end: the last row of the sample
+ *
+ * Gets emitted whenever @proxy's sample size has been changed. @sample_start and @sample_end are
+ * in reference to the proxied data model.
+ */
gda_data_proxy_signals [SAMPLE_CHANGED] =
g_signal_new ("sample-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -567,6 +591,17 @@
G_STRUCT_OFFSET (GdaDataProxyClass, sample_changed),
NULL, NULL,
_gda_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
+ /**
+ * GdaDataProxy::validate-row-changes
+ * @proxy: the #GdaDataProxy
+ * @row: the proxy's row
+ * @proxied_row: the proxied data model's row
+ *
+ * Gets emitted when @proxy is about to commit a row change to the proxied data model. If any
+ * callback returns a non %NULL value, then the change commit fails with the returned #GError
+ *
+ * Returns: a new #GError if validation failed, or %NULL
+ */
gda_data_proxy_signals [VALIDATE_ROW_CHANGES] =
g_signal_new ("validate-row-changes",
G_TYPE_FROM_CLASS (object_class),
@@ -574,6 +609,14 @@
G_STRUCT_OFFSET (GdaDataProxyClass, validate_row_changes),
validate_row_changes_accumulator, NULL,
_gda_marshal_ERROR__INT_INT, GDA_TYPE_ERROR, 2, G_TYPE_INT, G_TYPE_INT);
+ /**
+ * GdaDataProxy::row-changes-applied
+ * @proxy: the #GdaDataProxy
+ * @row: the proxy's row
+ * @proxied_row: the proxied data model's row
+ *
+ * Gets emitted when @proxy has committed a row change to the proxied data model.
+ */
gda_data_proxy_signals [ROW_CHANGES_APPLIED] =
g_signal_new ("row-changes-applied",
G_TYPE_FROM_CLASS (object_class),
@@ -581,6 +624,12 @@
G_STRUCT_OFFSET (GdaDataProxyClass, row_changes_applied),
NULL, NULL,
_gda_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT);
+ /**
+ * GdaDataProxy::filter-changed
+ * @proxy: the #GdaDataProxy
+ *
+ * Gets emitted when @proxy's filter has been changed
+ */
gda_data_proxy_signals [FILTER_CHANGED] =
g_signal_new ("filter-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -605,17 +654,25 @@
object_class->get_property = gda_data_proxy_get_property;
g_object_class_install_property (object_class, PROP_MODEL,
- g_param_spec_object ("model", _("Data model"), NULL,
+ g_param_spec_object ("model", NULL, "Proxied data model",
GDA_TYPE_DATA_MODEL,
(G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT)));
g_object_class_install_property (object_class, PROP_ADD_NULL_ENTRY,
- g_param_spec_boolean ("prepend-null-entry", NULL, NULL, FALSE,
+ g_param_spec_boolean ("prepend-null-entry", NULL,
+ "Tells if a row composed of NULL values is inserted "
+ "as the proxy's first row", FALSE,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_DEFER_SYNC,
- g_param_spec_boolean ("defer-sync", NULL, NULL, TRUE,
+ g_param_spec_boolean ("defer-sync", NULL,
+ "Tells if changes to the sample of rows displayed "
+ "is done in background in several steps or if it's "
+ "done in one step.", TRUE,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_SAMPLE_SIZE,
- g_param_spec_int ("sample-size", NULL, NULL, 0, G_MAXINT - 1, 300,
+ g_param_spec_int ("sample-size", NULL,
+ "Number of rows which the proxy will contain at any time, "
+ "like a sliding window on the proxied data model",
+ 0, G_MAXINT - 1, 300,
(G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT)));
g_static_mutex_lock (&parser_mutex);
@@ -2098,7 +2155,7 @@
* @proxy: a #GdaDataProxy object
* @sample_start: the number of the first row to be displayed
*
- * Sets the number of the first row to be displayed.
+ * Sets the number of the first row to be available in @proxy (in reference to the proxied data model)
*/
void
gda_data_proxy_set_sample_start (GdaDataProxy *proxy, gint sample_start)
@@ -2120,9 +2177,9 @@
* gda_data_proxy_get_sample_start
* @proxy: a #GdaDataProxy object
*
- * Get the row number of the first row to be displayed.
+ * Get the number of the first row to be available in @proxy (in reference to the proxied data model)
*
- * Returns: the number of the first row being displayed.
+ * Returns: the number of the first proxied model's row.
*/
gint
gda_data_proxy_get_sample_start (GdaDataProxy *proxy)
@@ -2137,9 +2194,9 @@
* gda_data_proxy_get_sample_end
* @proxy: a #GdaDataProxy object
*
- * Get the row number of the last row to be displayed.
+ * Get the number of the last row to be available in @proxy (in reference to the proxied data model)
*
- * Returns: the number of the last row being displayed.
+ * Returns: the number of the last proxied model's row.
*/
gint
gda_data_proxy_get_sample_end (GdaDataProxy *proxy)
Modified: trunk/libgda/gda-data-select.c
==============================================================================
--- trunk/libgda/gda-data-select.c (original)
+++ trunk/libgda/gda-data-select.c Fri Jan 23 15:53:09 2009
@@ -215,15 +215,18 @@
object_class->set_property = gda_data_select_set_property;
object_class->get_property = gda_data_select_get_property;
g_object_class_install_property (object_class, PROP_CNC,
- g_param_spec_object ("connection",
+ g_param_spec_object ("connection", NULL,
"Connection from which this data model is created",
- NULL, GDA_TYPE_CONNECTION,
+ GDA_TYPE_CONNECTION,
G_PARAM_WRITABLE | G_PARAM_READABLE | G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_PREP_STMT,
- g_param_spec_object ("prepared-stmt", NULL, NULL, GDA_TYPE_PSTMT,
+ g_param_spec_object ("prepared-stmt", NULL,
+ "Associated prepared statement (for internal usage)",
+ GDA_TYPE_PSTMT,
G_PARAM_WRITABLE | G_PARAM_READABLE));
g_object_class_install_property (object_class, PROP_FLAGS,
- g_param_spec_uint ("model-usage", NULL, NULL,
+ g_param_spec_uint ("model-usage", NULL,
+ "Determines how the data model may be used",
GDA_DATA_MODEL_ACCESS_RANDOM, G_MAXUINT,
GDA_DATA_MODEL_ACCESS_RANDOM,
G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
@@ -233,7 +236,7 @@
G_PARAM_READABLE | G_PARAM_WRITABLE));
g_object_class_install_property (object_class, PROP_PARAMS,
g_param_spec_object ("exec-params", NULL,
- _("GdaSet used when the SELECT statement was executed"),
+ "GdaSet used when the SELECT statement was executed",
GDA_TYPE_SET,
G_PARAM_WRITABLE | G_PARAM_READABLE | G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_INS_QUERY,
Modified: trunk/libgda/gda-holder.c
==============================================================================
--- trunk/libgda/gda-holder.c (original)
+++ trunk/libgda/gda-holder.c Fri Jan 23 15:53:09 2009
@@ -176,6 +176,12 @@
parent_class = g_type_class_peek_parent (class);
+ /**
+ * GdaHolder::source-changed
+ * @holder: the #GdaHolder
+ *
+ * Gets emitted when the data model in which @holder's values should be has changed
+ */
gda_holder_signals[SOURCE_CHANGED] =
g_signal_new ("source-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -183,6 +189,12 @@
G_STRUCT_OFFSET (GdaHolderClass, source_changed),
NULL, NULL,
_gda_marshal_VOID__VOID, G_TYPE_NONE, 0);
+ /**
+ * GdaHolder::changed
+ * @holder: the #GdaHolder
+ *
+ * Gets emitted when @holder's value has changed
+ */
gda_holder_signals[CHANGED] =
g_signal_new ("changed",
G_TYPE_FROM_CLASS (object_class),
@@ -190,6 +202,14 @@
G_STRUCT_OFFSET (GdaHolderClass, changed),
NULL, NULL,
_gda_marshal_VOID__VOID, G_TYPE_NONE, 0);
+ /**
+ * GdaHolder::attribute-changed
+ * @holder: the #GdaHolder
+ * @att_name: attribute's name
+ * @att_value: attribute's value
+ *
+ * Gets emitted when any @holder's attribute has changed
+ */
gda_holder_signals[ATT_CHANGED] =
g_signal_new ("attribute-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -200,7 +220,7 @@
G_TYPE_STRING, G_TYPE_VALUE);
/**
- * GdaHolder::before-change:
+ * GdaHolder::validate-change
* @holder: the object which received the signal
* @new_value: the proposed new value for @holder
*
@@ -231,34 +251,39 @@
object_class->set_property = gda_holder_set_property;
object_class->get_property = gda_holder_get_property;
g_object_class_install_property (object_class, PROP_ID,
- g_param_spec_string ("id", NULL, NULL, NULL,
+ g_param_spec_string ("id", NULL, "Holder's ID", NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_NAME,
- g_param_spec_string ("name", NULL, NULL, NULL,
+ g_param_spec_string ("name", NULL, "Holder's name", NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_DESCR,
- g_param_spec_string ("description", NULL, NULL, NULL,
+ g_param_spec_string ("description", NULL, "Holder's description", NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_GDA_TYPE,
- g_param_spec_gtype ("g-type", NULL, NULL, G_TYPE_NONE,
+ g_param_spec_gtype ("g-type", NULL, "Holder's GType", G_TYPE_NONE,
(G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT)));
g_object_class_install_property (object_class, PROP_NOT_NULL,
- g_param_spec_boolean ("not-null", NULL, NULL, FALSE,
+ g_param_spec_boolean ("not-null", NULL, "Can the value holder be NULL?", FALSE,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_SIMPLE_BIND,
- g_param_spec_object ("simple-bind", NULL, NULL,
+ g_param_spec_object ("simple-bind", NULL,
+ "Make value holder follow other GdaHolder's changes",
GDA_TYPE_HOLDER,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_FULL_BIND,
- g_param_spec_object ("full-bind", NULL, NULL,
+ g_param_spec_object ("full-bind", NULL,
+ "Make value holder follow other GdaHolder's changes "
+ "and the other way around",
GDA_TYPE_HOLDER,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_SOURCE_MODEL,
- g_param_spec_object ("source-model", NULL, NULL,
- GDA_TYPE_DATA_MODEL,
+ g_param_spec_object ("source-model", NULL, "Data model among which the holder's "
+ "value should be",
+ GDA_TYPE_DATA_MODEL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_SOURCE_COLUMN,
- g_param_spec_int ("source-column", NULL, NULL,
+ g_param_spec_int ("source-column", NULL, "Column number to use in coordination "
+ "with the source-model property",
0, G_MAXINT, 0,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
Modified: trunk/libgda/gda-meta-store.c
==============================================================================
--- trunk/libgda/gda-meta-store.c (original)
+++ trunk/libgda/gda-meta-store.c Fri Jan 23 15:53:09 2009
@@ -336,7 +336,7 @@
parent_class = g_type_class_peek_parent (klass);
/**
- * GdaMetaStore::suggest-update:
+ * GdaMetaStore::suggest-update
* @store: the #GdaMetaStore instance that emitted the signal
* @suggest: the suggested update, as a #GdaMetaContext structure
*
@@ -354,6 +354,13 @@
suggest_update_accumulator, NULL,
_gda_marshal_POINTER__POINTER, G_TYPE_POINTER,
1, G_TYPE_POINTER);
+ /**
+ * GdaMetaStore::meta-changed
+ * @store: the #GdaMetaStore instance that emitted the signal
+ * @changes: a list of changes made
+ *
+ * This signal is emitted when the @store's contents have changed (the changes are in the @changes list)
+ */
gda_meta_store_signals[META_CHANGED] =
g_signal_new ("meta-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -362,6 +369,13 @@
NULL, NULL,
_gda_marshal_VOID__POINTER, G_TYPE_NONE,
1, G_TYPE_POINTER);
+ /**
+ * GdaMetaStore::meta-reset
+ * @store: the #GdaMetaStore instance that emitted the signal
+ *
+ * This signal is emitted when the @store's contents have been reset completely and when
+ * no detailled changes are available
+ */
gda_meta_store_signals[META_RESET] =
g_signal_new ("meta-reset",
G_TYPE_FROM_CLASS (object_class),
Modified: trunk/libgda/gda-row.c
==============================================================================
--- trunk/libgda/gda-row.c (original)
+++ trunk/libgda/gda-row.c Fri Jan 23 15:53:09 2009
@@ -73,7 +73,7 @@
object_class->get_property = gda_row_get_property;
g_object_class_install_property (object_class, PROP_NB_VALUES,
- g_param_spec_int ("nb-values", NULL, NULL,
+ g_param_spec_int ("nb-values", NULL, "Number of values in the row",
1, G_MAXINT, 1,
G_PARAM_WRITABLE));
}
Modified: trunk/libgda/gda-server-operation.c
==============================================================================
--- trunk/libgda/gda-server-operation.c (original)
+++ trunk/libgda/gda-server-operation.c Fri Jan 23 15:53:09 2009
@@ -138,6 +138,14 @@
parent_class = g_type_class_peek_parent (klass);
/* signals */
+ /**
+ * GdaServerOperation::sequence-item-added
+ * @op: the #GdaServerOperation
+ * @seq_path: the path to the new sequence item
+ * @item_index: the index (starting from 0) of the new sequence item in the sequence
+ *
+ * Gets emitted whenever a new sequence item (from a sequence template) has been added
+ */
gda_server_operation_signals[SEQUENCE_ITEM_ADDED] =
g_signal_new ("sequence-item-added",
G_TYPE_FROM_CLASS (object_class),
@@ -146,6 +154,14 @@
NULL, NULL,
_gda_marshal_VOID__STRING_INT, G_TYPE_NONE,
2, G_TYPE_STRING, G_TYPE_INT);
+ /**
+ * GdaServerOperation::sequence-item-remove
+ * @op: the #GdaServerOperation
+ * @seq_path: the path to the sequence item to be removed
+ * @item_index: the index (starting from 0) of the sequence item in the sequence
+ *
+ * Gets emitted whenever a sequence item is about to be removed
+ */
gda_server_operation_signals[SEQUENCE_ITEM_REMOVE] =
g_signal_new ("sequence-item-remove",
G_TYPE_FROM_CLASS (object_class),
@@ -165,18 +181,20 @@
object_class->get_property = gda_server_operation_get_property;
g_object_class_install_property (object_class, PROP_CNC,
- g_param_spec_object ("connection", NULL, NULL,
+ g_param_spec_object ("connection", NULL, "Connection to use",
GDA_TYPE_CONNECTION,
G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_PROV,
- g_param_spec_object ("provider", NULL, NULL,
+ g_param_spec_object ("provider", NULL,
+ "Database provider which created the object",
GDA_TYPE_SERVER_PROVIDER,
G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_SPEC_FILE,
- g_param_spec_string ("spec-filename", NULL, NULL,
+ g_param_spec_string ("spec-filename", NULL,
+ "XML file which contains the object's data structure",
NULL, G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_OP_TYPE,
- g_param_spec_int ("op-type", NULL, NULL,
+ g_param_spec_int ("op-type", NULL, "Type of operation to be done",
0, GDA_SERVER_OPERATION_LAST - 1,
0, G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY));
}
Modified: trunk/libgda/gda-set.c
==============================================================================
--- trunk/libgda/gda-set.c (original)
+++ trunk/libgda/gda-set.c Fri Jan 23 15:53:09 2009
@@ -242,8 +242,8 @@
GDA_TYPE_HOLDER);
/**
- * GdaSet::validate-holder-change:
- * @set: the object which received the signal
+ * GdaSet::validate-holder-change
+ * @set: the #GdaSet
* @holder: the #GdaHolder which is going to change
* @new_value: the proposed new value for @holder
*
@@ -262,8 +262,8 @@
_gda_marshal_ERROR__OBJECT_VALUE, GDA_TYPE_ERROR, 2,
GDA_TYPE_HOLDER, G_TYPE_VALUE);
/**
- * GdaSet::validate-set:
- * @set: the object which received the signal
+ * GdaSet::validate-set
+ * @set: the #GdaSet
*
* Gets emitted when gda_set_is_valid() is called, use
* this signal to control which combination of values @set's holder can have (for example to implement some business rules)
@@ -278,6 +278,15 @@
G_STRUCT_OFFSET (GdaSetClass, validate_set),
validate_accumulator, NULL,
_gda_marshal_ERROR__VOID, GDA_TYPE_ERROR, 0);
+ /**
+ * GdaSet::holder-attr-changed
+ * @set: the #GdaSet
+ * @holder: the GdaHolder for which an attribute changed
+ * @attr_name: attribute's name
+ * @attr_value: attribute's value
+ *
+ * Gets emitted when an attribute for any of the #GdaHolder objects managed by @set has changed
+ */
gda_set_signals[HOLDER_ATTR_CHANGED] =
g_signal_new ("holder-attr-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -286,6 +295,12 @@
NULL, NULL,
_gda_marshal_VOID__OBJECT_STRING_VALUE, G_TYPE_NONE, 3,
GDA_TYPE_HOLDER, G_TYPE_STRING, G_TYPE_VALUE);
+ /**
+ * GdaSet::public-data-changed
+ * @set: the #GdaSet
+ *
+ * Gets emitted when @set's public data (#GdaSetNode, #GdaSetGroup or #GdaSetSource values) have changed
+ */
gda_set_signals[PUBLIC_DATA_CHANGED] =
g_signal_new ("public-data-changed",
G_TYPE_FROM_CLASS (object_class),
@@ -304,17 +319,17 @@
object_class->set_property = gda_set_set_property;
object_class->get_property = gda_set_get_property;
g_object_class_install_property (object_class, PROP_ID,
- g_param_spec_string ("id", NULL, NULL, NULL,
+ g_param_spec_string ("id", NULL, "Id", NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_NAME,
- g_param_spec_string ("name", NULL, NULL, NULL,
+ g_param_spec_string ("name", NULL, "Name", NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_DESCR,
- g_param_spec_string ("description", NULL, NULL, NULL,
+ g_param_spec_string ("description", NULL, "Description", NULL,
(G_PARAM_READABLE | G_PARAM_WRITABLE)));
g_object_class_install_property (object_class, PROP_HOLDERS,
g_param_spec_pointer ("holders", "GSList of GdaHolders",
- "Holders the set should contain", (
+ "GdaHolder objects the set should contain", (
G_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY)));
object_class->dispose = gda_set_dispose;
Modified: trunk/libgda/gda-set.h
==============================================================================
--- trunk/libgda/gda-set.h (original)
+++ trunk/libgda/gda-set.h Fri Jan 23 15:53:09 2009
@@ -115,7 +115,7 @@
GError *(*validate_set) (GdaSet *set);
void (*holder_changed) (GdaSet *set, GdaHolder *holder);
void (*holder_attr_changed) (GdaSet *set, GdaHolder *holder,
- const gchar *attr_name, const GValue *value);
+ const gchar *attr_name, const GValue *attr_value);
void (*public_data_changed) (GdaSet *set);
};
Modified: trunk/libgda/gda-statement.c
==============================================================================
--- trunk/libgda/gda-statement.c (original)
+++ trunk/libgda/gda-statement.c Fri Jan 23 15:53:09 2009
@@ -124,6 +124,12 @@
GObjectClass *object_class = G_OBJECT_CLASS (klass);
parent_class = g_type_class_peek_parent (klass);
+ /**
+ * GdaStatement::reset
+ * @stmt: the #GdaStatement object
+ *
+ * Gets emitted whenever the @stmt has changed
+ */
gda_statement_signals[RESET] =
g_signal_new ("reset",
G_TYPE_FROM_CLASS (object_class),
@@ -132,6 +138,13 @@
NULL, NULL,
g_cclosure_marshal_VOID__VOID, G_TYPE_NONE,
0);
+ /**
+ * GdaStatement::checked
+ * @stmt: the #GdaStatement object
+ *
+ * Gets emitted whenever the structure and contents
+ * of @stmt have been verified (emitted after gda_statement_check_validity()).
+ */
gda_statement_signals[CHECKED] =
g_signal_new ("checked",
G_TYPE_FROM_CLASS (object_class),
Modified: trunk/libgda/gda-util.c
==============================================================================
--- trunk/libgda/gda-util.c (original)
+++ trunk/libgda/gda-util.c Fri Jan 23 15:53:09 2009
@@ -46,6 +46,13 @@
* gda_g_type_to_string
* @type: Type to convert from.
*
+ * Converts a GType to its string representation (use gda_g_type_from_string() for the
+ * operation in the other direction).
+ *
+ * This function wraps g_type_name() but for common types it provides an easier to
+ * understand and remember name. For Example the G_TYPE_STRING is converted to "string"
+ * whereas g_type_name() converts it to "gchararray".
+ *
* Returns: the GDA's string representing the given #GType or the name
* returned by #g_type_name.
*/
@@ -74,6 +81,20 @@
* gda_g_type_from_string
* @str: the name of a #GType, as returned by gda_g_type_to_string().
*
+ * Converts a named type to ts GType type (also see the gda_g_type_to_string() function).
+ *
+ * This function is a wrapper around the g_type_from_name() function, but also recognizes
+ * some type synonyms such as:
+ * <itemizedlist>
+ * <listitem><para>"int" for G_TYPE_INT</para></listitem>
+ * <listitem><para>"string" for G_TYPE_STRING</para></listitem>
+ * <listitem><para>"date" for G_TYPE_DATE</para></listitem>
+ * <listitem><para>"time" for GDA_TYPE_TIME</para></listitem>
+ * <listitem><para>"timestamp" for GDA_TYPE_TIMESTAMP</para></listitem>
+ * <listitem><para>"boolean" for G_TYPE_BOOLEAN</para></listitem>
+ * <listitem><para>"null" for GDA_TYPE_NULL</para></listitem>
+ * </itemizedlist>
+ *
* Returns: the #GType represented by the given @str.
*/
GType
Modified: trunk/libgda/gda-util.h
==============================================================================
--- trunk/libgda/gda-util.h (original)
+++ trunk/libgda/gda-util.h Fri Jan 23 15:53:09 2009
@@ -46,7 +46,7 @@
gchar *gda_default_unescape_string (const gchar *string);
guint gda_identifier_hash (const gchar *id);
gboolean gda_identifier_equal (const gchar *id1, const gchar *id2);
-gchar **gda_completion_list_get (GdaConnection *cnc, const gchar *text, gint start, gint end);
+gchar **gda_completion_list_get (GdaConnection *cnc, const gchar *sql, gint start, gint end);
/*
* Param & model utilities
Modified: trunk/libgda/sql-parser/gda-sql-parser.c
==============================================================================
--- trunk/libgda/sql-parser/gda-sql-parser.c (original)
+++ trunk/libgda/sql-parser/gda-sql-parser.c Fri Jan 23 15:53:09 2009
@@ -425,6 +425,9 @@
* contains more than one statement, then the remaining part of the string is not parsed at all, and @remain (if
* not %NULL) will point at the first non parsed character.
*
+ * To include variables in the @sql string, see the
+ * <link linkend="GdaSqlParser.description">GdaSqlParser's object description</link>.
+ *
* Returns: a new #GdaStatement object, or %NULL if an error occurred
*/
GdaStatement *
@@ -656,6 +659,9 @@
*
* if @sql is %NULL, then the returned #GdaBatch object will contain no statement.
*
+ * To include variables in the @sql string, see the
+ * <link linkend="GdaSqlParser.description">GdaSqlParser's object description</link>.
+ *
* Returns: a new #GdaBatch object, or %NULL if an error occurred
*/
GdaBatch *
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]