diff options
author | Brian Tarricone <brian@tarricone.org> | 2007-10-03 12:34:05 +0000 |
---|---|---|
committer | Brian Tarricone <brian@tarricone.org> | 2007-10-03 12:34:05 +0000 |
commit | 6e3eb9e521c7ca454af781ef55b43d1c32088bff (patch) | |
tree | c08de354597683bb084dd7cf5360bc98b6e2176e /xfconf | |
parent | 0395d8ec37100b934b51378a8783911b4a223963 (diff) | |
download | xfconf-6e3eb9e521c7ca454af781ef55b43d1c32088bff.tar.gz |
* move XfconfBackendError to a more public place and rename it to XfconfError
* allow xfconfd to load multiple backends, the first of which is read/write,
and the others are read-only
* update docs
(Old svn revision: 26762)
Diffstat (limited to 'xfconf')
-rw-r--r-- | xfconf/Makefile.am | 1 | ||||
-rw-r--r-- | xfconf/xfconf-errors.h | 51 | ||||
-rw-r--r-- | xfconf/xfconf.c | 3 | ||||
-rw-r--r-- | xfconf/xfconf.h | 1 |
4 files changed, 56 insertions, 0 deletions
diff --git a/xfconf/Makefile.am b/xfconf/Makefile.am index b52eed3..05d7fc9 100644 --- a/xfconf/Makefile.am +++ b/xfconf/Makefile.am @@ -4,6 +4,7 @@ lib_LTLIBRARIES = libxfconf-0.la libxfconfincludedir = $(includedir)/xfce4/xfconf-$(LIBXFCONF_VERSION_API)/xfconf libxfconfinclude_HEADERS = \ xfconf-channel.h \ + xfconf-errors.h \ xfconf.h libxfconf_0_la_SOURCES = \ diff --git a/xfconf/xfconf-errors.h b/xfconf/xfconf-errors.h new file mode 100644 index 0000000..54d9f55 --- /dev/null +++ b/xfconf/xfconf-errors.h @@ -0,0 +1,51 @@ +/* + * xfconf + * + * Copyright (c) 2007 Brian Tarricone <bjt23@cornell.edu> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License ONLY. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifndef __XFCONF_ERRORS_H__ +#define __XFCONF_ERRORS_H__ + +#if !defined(LIBXFCONF_COMPILATION) && !defined(XFCONF_IN_XFCONF_H) +#error "Do not include xfconf-errors.h, as this file may change or disappear in the future. Include <xfconf/xfconf.h> instead." +#endif + +#include <glib-object.h> + +#define XFCONF_TYPE_ERROR (xfconf_error_get_type()) +#define XFCONF_ERROR (xfconf_get_error_quark()) + +G_BEGIN_DECLS + +typedef enum +{ + XFCONF_ERROR_UNKNOWN = 0, + XFCONF_ERROR_CHANNEL_NOT_FOUND, + XFCONF_ERROR_PROPERTY_NOT_FOUND, + XFCONF_ERROR_READ_FAILURE, + XFCONF_ERROR_WRITE_FAILURE, + XFCONF_ERROR_PERMISSION_DENIED, + XFCONF_ERROR_INTERNAL_ERROR, + XFCONF_ERROR_NO_BACKEND, +} XfconfError; + +GType xfconf_error_get_type() G_GNUC_CONST; +GQuark xfconf_get_error_quark(); + +G_END_DECLS + +#endif /* __XFCONF_ERRORS_H__ */ diff --git a/xfconf/xfconf.c b/xfconf/xfconf.c index 17ca85f..ac6ba48 100644 --- a/xfconf/xfconf.c +++ b/xfconf/xfconf.c @@ -88,6 +88,9 @@ xfconf_init(GError **error) g_type_init(); + dbus_g_error_domain_register(XFCONF_ERROR, "org.xfce.Xfconf.Error", + XFCONF_TYPE_ERROR); + dbus_conn = dbus_g_bus_get(DBUS_BUS_SESSION, error); if(!dbus_conn) return FALSE; diff --git a/xfconf/xfconf.h b/xfconf/xfconf.h index dd477d1..f1ad9fb 100644 --- a/xfconf/xfconf.h +++ b/xfconf/xfconf.h @@ -25,6 +25,7 @@ #define XFCONF_IN_XFCONF_H #include <xfconf/xfconf-channel.h> +#include <xfconf/xfconf-errors.h> G_BEGIN_DECLS |