Function
Gdkproperty_get
Declaration [src]
gboolean
gdk_property_get (
GdkWindow* window,
GdkAtom property,
GdkAtom type,
gulong offset,
gulong length,
gint pdelete,
GdkAtom* actual_property_type,
gint* actual_format,
gint* actual_length,
guchar** data
)
Description [src]
Retrieves a portion of the contents of a property. If the
property does not exist, then the function returns FALSE,
and GDK_NONE will be stored in actual_property_type.
The XGetWindowProperty() function that gdk_property_get()
uses has a very confusing and complicated set of semantics.
Unfortunately, gdk_property_get() makes the situation
worse instead of better (the semantics should be considered
undefined), and also prints warnings to stderr in cases where it
should return a useful error to the program. You are advised to use
XGetWindowProperty() directly until a replacement function for
gdk_property_get() is provided.
Parameters
window-
Type:
GdkWindowA
GdkWindow.The data is owned by the caller of the function. property-
Type:
GdkAtomThe property to retrieve.
type-
Type:
GdkAtomThe desired property type, or
GDK_NONE, if any type of data is acceptable. If this does not match the actual type, thenactual_formatandactual_lengthwill be filled in, a warning will be printed to stderr and no data will be returned. offset-
Type:
gulongThe offset into the property at which to begin retrieving data, in 4 byte units.
length-
Type:
gulongThe length of the data to retrieve in bytes. Data is considered to be retrieved in 4 byte chunks, so
lengthwill be rounded up to the next highest 4 byte boundary (so be careful not to pass a value that might overflow when rounded up). pdelete-
Type:
gintIf
TRUE, delete the property after retrieving the data. actual_property_type-
Type:
GdkAtomLocation to store the actual type of the property.
The argument will be set by the function. The returned data is owned by the function. actual_format-
Type:
gint*Location to store the actual return format of the data; either 8, 16 or 32 bits.
The argument will be set by the function. actual_length-
Type:
gint*Location to store the length of the retrieved data, in bytes. Data returned in the 32 bit format is stored in a long variable, so the actual number of 32 bit elements should be be calculated via
actual_length/ sizeof(glong) to ensure portability to 64 bit systems.The argument will be set by the function. data-
Type: An array of
guchar*Location to store a pointer to the data. The retrieved data should be freed with
g_free()when you are finished using it.The argument will be set by the function. The length of the array is specified in the actual_lengthargument.The caller of the function takes ownership of the returned data, and is responsible for freeing it.