propertyGet

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 Window

a #GdkWindow

property GdkAtom

the property to retrieve

type GdkAtom

the desired property type, or %GDK_NONE, if any type of data is acceptable. If this does not match the actual type, then @actual_format and @actual_length will be filled in, a warning will be printed to stderr and no data will be returned.

offset gulong

the offset into the property at which to begin retrieving data, in 4 byte units.

length gulong

the length of the data to retrieve in bytes. Data is considered to be retrieved in 4 byte chunks, so @length will 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 int

if %TRUE, delete the property after retrieving the data.

actualPropertyType GdkAtom

location to store the actual type of the property.

actualFormat int

location to store the actual return format of the data; either 8, 16 or 32 bits.

data string

location to store a pointer to the data. The retrieved data should be freed with g_free() when you are finished using it.

Return: %TRUE if data was successfully received and stored in @data, otherwise %FALSE.

Meta