back to automake
[mikachu/openbox.git] / cwmcc / prop.h
1 #ifndef __cwmcc_prop_h
2 #define __cwmcc_prop_h
3
4 #include <glib.h>
5 #include <X11/Xlib.h>
6
7 /* with the exception of prop_get32, all other prop_get_* functions require
8    you to free the returned value with g_free or g_strfreev (for the char**s)
9 */
10
11 gboolean cwmcc_prop_get32(Window win, Atom prop, Atom type, gulong *ret);
12
13 gboolean cwmcc_prop_get_array32(Window win, Atom prop, Atom type, gulong **ret,
14                           gulong *nret);
15
16 gboolean cwmcc_prop_get_string(Window win, Atom prop, Atom type, char **ret);
17
18 /*! Gets a string from a property which is stored in UTF-8 encoding. */
19 gboolean cwmcc_prop_get_string_utf8(Window win, Atom prop, char **ret);
20
21 /*! Gets a string from a property which is stored in the current local
22   encoding. The returned string is in UTF-8 encoding. */
23 gboolean cwmcc_prop_get_string_locale(Window win, Atom prop, char **ret);
24
25 /*! Gets a null terminated array of strings from a property which is stored in
26   UTF-8 encoding. */
27 gboolean cwmcc_prop_get_strings_utf8(Window win, Atom prop, char ***ret);
28
29 /*! Gets a null terminated array of strings from a property which is stored in
30   the current locale encoding. The returned string is in UTF-8 encoding. */
31 gboolean cwmcc_prop_get_strings_locale(Window win, Atom prop, char ***ret);
32
33 void cwmcc_prop_set32(Window win, Atom prop, Atom type, gulong val);
34
35 void cwmcc_prop_set_array32(Window win, Atom prop, Atom type,
36                             gulong *val, gulong num);
37
38 void cwmcc_prop_set_string_utf8(Window win, Atom prop, char *val);
39
40 /*! Sets a null terminated array of strings in a property encoded as UTF-8. */
41 void cwmcc_prop_set_strings_utf8(Window win, Atom prop, char **strs);
42
43 void cwmcc_prop_erase(Window win, Atom prop);
44
45 #endif