Creates a new #GDataDocumentsQuery with its #GDataQuery:q property set to q
.
a query string, or %NULL
An entry author. The service returns entries where the author name and/or e-mail address match your query string.
A category filter.
You can query on multiple categories by listing multiple categories separated by slashes. The service returns all entries that match all
of the categories (like using AND between terms). For example:
To do an OR between terms, use a pipe character (
An entry matches a specified category if the entry is in a category that has a matching term or label, as defined in the Atom specification. (Roughly, the "term" is the internal string used by the software to identify the category, while the "label" is the human-readable string presented to a user in a user interface.)
To exclude entries that match a given category, use the form
To query for a category that has a scheme – such as
The above features can be combined. For example:
The ETag against which to check for updates. If the server-side ETag matches this one, the requested feed hasn't changed, and is not returned unnecessarily.
Setting any of the other query properties will unset the ETag, as ETags match against entire queries. If the ETag should be used in a query, it must be set again using gdata_query_set_etag() after setting any other properties.
Specifies whether the query should search for an exact title match for the #GDataDocumentsQuery:title parameter.
Specifies the ID of the folder in which to search.
Strict query parameter checking. If this is enabled, an error will be returned by the online service if a parameter is not recognised.
Maximum number of results to be retrieved. Most services have a default #GDataQuery:max-results size imposed by the server; if you wish to receive the entire feed, specify a large number such as %G_MAXUINT for this property.
Use 0
to not specify a maximum number of results.
Upper bound on the entry publish date, exclusive.
Lower bound on the entry publish date, inclusive.
A full-text query string.
When creating a query, list search terms separated by spaces, in the form
To search for an exact phrase, enclose the phrase in quotation marks:
To exclude entries that match a given term, use the form
The search is case-insensitive.
Example: to search for all entries that contain the exact phrase "Elizabeth Bennet" and the word "Darcy" but don't contain the
word "Austen", use the following query:
A shortcut to request all documents that have been deleted.
Specifies if the request also returns folders.
The one-based index of the first result to be retrieved. Use gdata_query_next_page() and gdata_query_previous_page() to implement pagination, rather than manually changing #GDataQuery:start-index.
Use 0
to not specify a start index.
A title (or title fragment) to be searched for. If #GDataDocumentsQuery:exact-title is %TRUE, an exact title match will be searched for, otherwise substring matches will also be returned.
Upper bound on the entry update date, exclusive.
Lower bound on the entry update date, inclusive.
Add email_address
as a #GDataGDEmailAddress to the list of collaborators whose edited documents will be queried.
the e-mail address of the collaborator to add
Add email_address
as a #GDataGDEmailAddress to the list of readers, the documents readable by whom will be queried.
the e-mail address of the reader to add
Creates a binding between source_property
on source
and target_property
on target
.
Whenever the source_property
is changed the target_property
is
updated using the same value. For instance:
g_object_bind_property (action, "active", widget, "sensitive", 0);
Will result in the "sensitive" property of the widget #GObject instance to be updated with the same value of the "active" property of the action #GObject instance.
If flags
contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
if target_property
on target
changes then the source_property
on source
will be updated as well.
The binding will automatically be removed when either the source
or the
target
instances are finalized. To remove the binding without affecting the
source
and the target
you can just call g_object_unref() on the returned
#GBinding instance.
Removing the binding by calling g_object_unref() on it must only be done if
the binding, source
and target
are only used from a single thread and it
is clear that both source
and target
outlive the binding. Especially it
is not safe to rely on this if the binding, source
or target
can be
finalized from different threads. Keep another reference to the binding and
use g_binding_unbind() instead to be on the safe side.
A #GObject can have multiple bindings.
the property on source
to bind
the target #GObject
the property on target
to bind
flags to pass to #GBinding
Creates a binding between source_property
on source
and target_property
on target,
allowing you to set the transformation functions to be used by
the binding.
This function is the language bindings friendly version of g_object_bind_property_full(), using #GClosures instead of function pointers.
the property on source
to bind
the target #GObject
the property on target
to bind
flags to pass to #GBinding
a #GClosure wrapping the transformation function from the source
to the target,
or %NULL to use the default
a #GClosure wrapping the transformation function from the target
to the source,
or %NULL to use the default
This function is intended for #GObject implementations to re-enforce a [floating][floating-ref] object reference. Doing this is seldom required: all #GInitiallyUnowneds are created with a floating reference which usually just needs to be sunken by calling g_object_ref_sink().
Increases the freeze count on object
. If the freeze count is
non-zero, the emission of "notify" signals on object
is
stopped. The signals are queued until the freeze count is decreased
to zero. Duplicate notifications are squashed so that at most one
#GObject::notify signal is emitted for each property modified while the
object is frozen.
This is necessary for accessors that modify multiple properties to prevent premature notification while the object is still being modified.
Gets the #GDataQuery:author property.
Gets the #GDataQuery:categories property.
Gets a list of #GDataGDEmailAddresses of the document collaborators whose documents will be queried.
Gets a named field from the objects table of associations (see g_object_set_data()).
name of the key for that association
Gets the #GDataQuery:etag property.
Gets the #GDataDocumentsQuery:exact-title property.
Gets the #GDataDocumentsQuery:folder-id property.
Gets the #GDataQuery:max-results property.
Gets a property of an object.
The value
can be:
In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling g_value_unset().
Note that g_object_get_property() is really intended for language bindings, g_object_get() is much more convenient for C programming.
the name of the property to get
return location for the property value
Gets the #GDataQuery:published-max property. If the property is unset, -1
will be returned.
Gets the #GDataQuery:published-min property. If the property is unset, -1
will be returned.
Gets the #GDataQuery:q property.
This function gets back user data pointers stored via g_object_set_qdata().
A #GQuark, naming the user data pointer
Builds a query URI from the given base feed URI, using the properties of the #GDataQuery. This function will take care
of all necessary URI escaping, so it should
The query URI is what functions like gdata_service_query() use to query the online service.
the feed URI on which to build the query URI
Gets a list of #GDataGDEmailAddresses of the document readers whose documents will be queried.
Gets the #GDataQuery:start-index property.
Gets the #GDataDocumentsQuery:title property.
Gets the #GDataQuery:updated-max property. If the property is unset, -1
will be returned.
Gets the #GDataQuery:updated-min property. If the property is unset, -1
will be returned.
Gets n_properties
properties for an object
.
Obtained properties will be set to values
. All properties must be valid.
Warnings will be emitted and undefined behaviour may result if invalid
properties are passed in.
the names of each property to get
the values of each property to get
Checks whether object
has a [floating][floating-ref] reference.
Changes the state of the #GDataQuery such that when gdata_query_get_query_uri() is next called, it will build the query URI for the next page in the result set.
Ideally, the URI of the next page is retrieved from a feed automatically when gdata_service_query() is called, but gdata_query_next_page() will fall back to using #GDataQuery:start-index to emulate true pagination if this fails.
You
Emits a "notify" signal for the property property_name
on object
.
When possible, eg. when signaling a property change from within the class that registered the property, you should use g_object_notify_by_pspec() instead.
Note that emission of the notify signal may be blocked with g_object_freeze_notify(). In this case, the signal emissions are queued and will be emitted (in reverse order) when g_object_thaw_notify() is called.
the name of a property installed on the class of object
.
Emits a "notify" signal for the property specified by pspec
on object
.
This function omits the property name lookup, hence it is faster than g_object_notify().
One way to avoid using g_object_notify() from within the class that registered the properties, and using g_object_notify_by_pspec() instead, is to store the GParamSpec used with g_object_class_install_property() inside a static array, e.g.:
enum
{
PROP_0,
PROP_FOO,
PROP_LAST
};
static GParamSpec *properties[PROP_LAST];
static void
my_object_class_init (MyObjectClass *klass)
{
properties[PROP_FOO] = g_param_spec_int ("foo", "Foo", "The foo",
0, 100,
50,
G_PARAM_READWRITE);
g_object_class_install_property (gobject_class,
PROP_FOO,
properties[PROP_FOO]);
}
and then notify a change on the "foo" property with:
g_object_notify_by_pspec (self, properties[PROP_FOO]);
the #GParamSpec of a property installed on the class of object
.
Changes the state of the #GDataQuery such that when gdata_query_get_query_uri() is next called, it will build the query URI for the previous page in the result set.
See the documentation for gdata_query_next_page() for an explanation of how query URIs from the feeds are used to this end.
Increase the reference count of object,
and possibly remove the
[floating][floating-ref] reference, if object
has a floating reference.
In other words, if the object is floating, then this call "assumes ownership" of the floating reference, converting it to a normal reference by clearing the floating flag while leaving the reference count unchanged. If the object is not floating, then this call adds a new normal reference increasing the reference count by one.
Since GLib 2.56, the type of object
will be propagated to the return type
under the same conditions as for g_object_ref().
Releases all references to other objects. This can be used to break reference cycles.
This function should only be called from object system implementations.
Sets the #GDataQuery:author property of the #GDataQuery to the new author string, author
.
Set author
to %NULL to unset the property in the query URI.
the new author string, or %NULL
Sets the #GDataQuery:categories property of the #GDataQuery to the new category string, categories
.
Set categories
to %NULL to unset the property in the query URI.
the new category string, or %NULL
Each object carries around a table of associations from strings to pointers. This function lets you set an association.
If the object already had an association with that name, the old association will be destroyed.
Internally, the key
is converted to a #GQuark using g_quark_from_string().
This means a copy of key
is kept permanently (even after object
has been
finalized) — so it is recommended to only use a small, bounded set of values
for key
in your program, to avoid the #GQuark storage growing unbounded.
name of the key
data to associate with that key
Sets the #GDataQuery:etag property of the #GDataQuery to the new ETag, etag
.
Set etag
to %NULL to not check against the server-side ETag.
the new ETag, or %NULL
Sets the #GDataDocumentsQuery:folder-id property to folder_id
.
Set folder_id
to %NULL to unset the property in the query URI.
the ID of the folder to be queried, or %NULL
Sets the #GDataQuery:is-strict property of the #GDataQuery to the new strict value, is_strict
.
the new strict value
Sets the #GDataQuery:max-results property of the #GDataQuery to the new maximum results value, max_results
.
Set max_results
to 0
to unset the property in the query URI.
the new maximum results value, or 0
Sets a property on an object.
the name of the property to set
the value
Sets the #GDataQuery:published-max property of the #GDataQuery to the new maximum publish time, published_max
.
Set published_max
to -1
to unset the property in the query URI.
the new maximum publish time, or -1
Sets the #GDataQuery:published-min property of the #GDataQuery to the new minimum publish time, published_min
.
Set published_min
to -1
to unset the property in the query URI.
the new minimum publish time, or -1
Sets the #GDataQuery:q property of the #GDataQuery to the new query string, q
.
Set q
to %NULL to unset the property in the query URI.
a new query string, or %NULL
Sets the #GDataDocumentsQuery:show_deleted property to show_deleted
.
%TRUE if the request should return deleted entries, %FALSE otherwise
Sets the #GDataDocumentsQuery:show-folders property to show_folders.
%TRUE if the request should return folders, %FALSE otherwise
Sets the #GDataQuery:start-index property of the #GDataQuery to the new one-based start index, start_index
.
Set start_index
to 0
to unset the property in the query URI.
the new start index, or 0
Sets the #GDataDocumentsQuery:title property to title
.
Set title
to %NULL to unset the property in the query URI.
the title (or title fragment) to query for, or %NULL
%TRUE if the query should match the exact title,
%FALSE otherwise
Sets the #GDataQuery:updated-max property of the #GDataQuery to the new maximum update time, updated_max
.
Set updated_max
to -1
to unset the property in the query URI.
the new maximum update time, or -1
Sets the #GDataQuery:updated-min property of the #GDataQuery to the new minimum update time, updated_min
.
Set updated_min
to -1
to unset the property in the query URI.
the new minimum update time, or -1
Remove a specified datum from the object's data associations, without invoking the association's destroy handler.
name of the key
This function gets back user data pointers stored via
g_object_set_qdata() and removes the data
from object
without invoking its destroy() function (if any was
set).
Usually, calling this function is only required to update
user data pointers with a destroy notifier, for example:
void
object_add_to_user_list (GObject *object,
const gchar *new_string)
{
// the quark, naming the object data
GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
// retrieve the old string list
GList *list = g_object_steal_qdata (object, quark_string_list);
// prepend new string
list = g_list_prepend (list, g_strdup (new_string));
// this changed 'list', so we need to set it again
g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
}
static void
free_string_list (gpointer data)
{
GList *node, *list = data;
for (node = list; node; node = node->next)
g_free (node->data);
g_list_free (list);
}
Using g_object_get_qdata() in the above example, instead of g_object_steal_qdata() would have left the destroy function set, and thus the partial string list would have been freed upon g_object_set_qdata_full().
A #GQuark, naming the user data pointer
Reverts the effect of a previous call to
g_object_freeze_notify(). The freeze count is decreased on object
and when it reaches zero, queued "notify" signals are emitted.
Duplicate notifications for each property are squashed so that at most one #GObject::notify signal is emitted for each property, in the reverse order in which they have been queued.
It is an error to call this function when the freeze count is zero.
Decreases the reference count of object
. When its reference count
drops to 0, the object is finalized (i.e. its memory is freed).
If the pointer to the #GObject may be reused in future (for example, if it is an instance variable of another object), it is recommended to clear the pointer to %NULL rather than retain a dangling pointer to a potentially invalid #GObject instance. Use g_clear_object() for this.
This function essentially limits the life time of the closure
to
the life time of the object. That is, when the object is finalized,
the closure
is invalidated by calling g_closure_invalidate() on
it, in order to prevent invocations of the closure with a finalized
(nonexisting) object. Also, g_object_ref() and g_object_unref() are
added as marshal guards to the closure,
to ensure that an extra
reference count is held on object
during invocation of the
closure
. Usually, this function will be called on closures that
use this object
as closure data.
#GClosure to watch
Find the #GParamSpec with the given name for an
interface. Generally, the interface vtable passed in as g_iface
will be the default vtable from g_type_default_interface_ref(), or,
if you know the interface has already been loaded,
g_type_default_interface_peek().
any interface vtable for the interface, or the default vtable for the interface
name of a property to look up.
Add a property to an interface; this is only useful for interfaces that are added to GObject-derived types. Adding a property to an interface forces all objects classes with that interface to have a compatible property. The compatible property could be a newly created #GParamSpec, but normally g_object_class_override_property() will be used so that the object class only needs to provide an implementation and inherits the property description, default value, bounds, and so forth from the interface property.
This function is meant to be called from the interface's default
vtable initialization function (the class_init
member of
#GTypeInfo.) It must not be called after after class_init
has
been called for any object types implementing this interface.
If pspec
is a floating reference, it will be consumed.
any interface vtable for the interface, or the default vtable for the interface.
the #GParamSpec for the new property
Lists the properties of an interface.Generally, the interface
vtable passed in as g_iface
will be the default vtable from
g_type_default_interface_ref(), or, if you know the interface has
already been loaded, g_type_default_interface_peek().
any interface vtable for the interface, or the default vtable for the interface
Creates a new #GDataDocumentsQuery with its #GDataQuery:q property set to q
.
a query string, or %NULL
Creates a new #GDataQuery with its #GDataQuery:q property set to q
.
a query string, or %NULL
Creates a new #GDataDocumentsQuery with its #GDataQuery:q property set to q,
and the limits start_index
and max_results
applied.
a query string, or %NULL
a one-based start index for the results, or 0
the maximum number of results to return, or 0
Creates a new #GDataQuery with its #GDataQuery:q property set to q,
and the limits start_index
and max_results
applied.
a query string, or %NULL
a one-based start index for the results, or 0
the maximum number of results to return, or 0
Creates a new instance of a #GObject subtype and sets its properties.
Construction parameters (see %G_PARAM_CONSTRUCT, %G_PARAM_CONSTRUCT_ONLY) which are not explicitly specified are set to their default values.
the type id of the #GObject subtype to instantiate
an array of #GParameter
All the fields in the #GDataDocumentsQuery structure are private and should never be accessed directly.