Commit df55a76d authored by William Jon McCann's avatar William Jon McCann Committed by William Jon McCann

Remove the settings daemon. We use gnome-settings-daemon now.

2007-12-21  William Jon McCann  <mccann@jhu.edu>

	* configure.ac:
	* gui/Makefile.am:
	* gui/settings-daemon/Makefile.am:
	* gui/settings-daemon/gdm-settings-manager.c:
	* gui/settings-daemon/gdm-settings-manager.h:
	* gui/settings-daemon/gdm-settings-module.c:
	* gui/settings-daemon/gdm-settings-module.h:
	* gui/settings-daemon/gdm-settings-plugin.c:
	* gui/settings-daemon/gdm-settings-plugin.h:
	* gui/settings-daemon/gdm-settings-plugins-engine.c:
	* gui/settings-daemon/gdm-settings-plugins-engine.h:
	* gui/settings-daemon/main.c:
	* gui/settings-daemon/plugins/Makefile.am:
	* gui/settings-daemon/plugins/xsettings/Makefile.am:
	* gui/settings-daemon/plugins/xsettings/gdm-xsettings-manager.c:
	* gui/settings-daemon/plugins/xsettings/gdm-xsettings-manager.h:
	* gui/settings-daemon/plugins/xsettings/gdm-xsettings-plugin.c:
	* gui/settings-daemon/plugins/xsettings/gdm-xsettings-plugin.h:
	* gui/settings-daemon/plugins/xsettings/xsettings-common.c:
	* gui/settings-daemon/plugins/xsettings/xsettings-common.h:
	* gui/settings-daemon/plugins/xsettings/xsettings-manager.c:
	* gui/settings-daemon/plugins/xsettings/xsettings-manager.h:
	* gui/settings-daemon/plugins/xsettings/xsettings.gdm-settings-plugin.desktop.in:
	Remove the settings daemon.  We use gnome-settings-daemon now.


svn path=/trunk/; revision=5590
parent 4303c4d7
2007-12-21 William Jon McCann <mccann@jhu.edu>
* configure.ac:
* gui/Makefile.am:
* gui/settings-daemon/Makefile.am:
* gui/settings-daemon/gdm-settings-manager.c:
* gui/settings-daemon/gdm-settings-manager.h:
* gui/settings-daemon/gdm-settings-module.c:
* gui/settings-daemon/gdm-settings-module.h:
* gui/settings-daemon/gdm-settings-plugin.c:
* gui/settings-daemon/gdm-settings-plugin.h:
* gui/settings-daemon/gdm-settings-plugins-engine.c:
* gui/settings-daemon/gdm-settings-plugins-engine.h:
* gui/settings-daemon/main.c:
* gui/settings-daemon/plugins/Makefile.am:
* gui/settings-daemon/plugins/xsettings/Makefile.am:
* gui/settings-daemon/plugins/xsettings/gdm-xsettings-manager.c:
* gui/settings-daemon/plugins/xsettings/gdm-xsettings-manager.h:
* gui/settings-daemon/plugins/xsettings/gdm-xsettings-plugin.c:
* gui/settings-daemon/plugins/xsettings/gdm-xsettings-plugin.h:
* gui/settings-daemon/plugins/xsettings/xsettings-common.c:
* gui/settings-daemon/plugins/xsettings/xsettings-common.h:
* gui/settings-daemon/plugins/xsettings/xsettings-manager.c:
* gui/settings-daemon/plugins/xsettings/xsettings-manager.h:
* gui/settings-daemon/plugins/xsettings/xsettings.gdm-settings-plugin.desktop.in:
Remove the settings daemon. We use gnome-settings-daemon now.
2007-12-21 William Jon McCann <mccann@jhu.edu>
* gui/simple-greeter/Makefile.am:
......
......@@ -1320,9 +1320,6 @@ AC_OUTPUT([
Makefile
daemon/Makefile
gui/Makefile
gui/settings-daemon/Makefile
gui/settings-daemon/plugins/Makefile
gui/settings-daemon/plugins/xsettings/Makefile
gui/simple-greeter/Makefile
gui/simple-greeter/libnotificationarea/Makefile
gui/simple-chooser/Makefile
......
NULL =
SUBDIRS = \
settings-daemon \
simple-chooser \
simple-greeter \
$(NULL)
NULL =
SUBDIRS = \
plugins \
$(NULL)
INCLUDES = \
-I$(top_srcdir)/common \
-DDATADIR=\""$(datadir)"\" \
-DGDM_SETTINGS_LOCALEDIR=\""$(datadir)/locale"\"\
-DLIBEXECDIR=\""$(libexecdir)"\" \
-DSBINDIR=\""$(sbindir)"\" \
-DGDM_SETTINGS_PLUGINDIR=\""$(libdir)/gdm/settings/plugins"\" \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS) \
$(SETTINGS_DAEMON_CFLAGS) \
$(NULL)
libexec_PROGRAMS = \
gdm-settings-daemon \
$(NULL)
gdm_settings_daemon_SOURCES = \
main.c \
gdm-settings-manager.c \
gdm-settings-manager.h \
gdm-settings-plugin.c \
gdm-settings-plugin.h \
gdm-settings-plugins-engine.c \
gdm-settings-plugins-engine.h \
gdm-settings-module.c \
gdm-settings-module.h \
$(NULL)
gdm_settings_daemon_CPPFLAGS = \
$(AM_CPPFLAGS) \
$(NULL)
gdm_settings_daemon_CFLAGS = \
$(AM_CFLAGS) \
$(NULL)
gdm_settings_daemon_LDFLAGS = \
$(AM_LDFLAGS) \
$(NULL)
gdm_settings_daemon_LDADD = \
$(SETTINGS_DAEMON_LIBS) \
$(top_builddir)/common/libgdmcommon.la \
$(NULL)
EXTRA_DIST = \
$(NULL)
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2007 William Jon McCann <mccann@jhu.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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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.
*
*/
#include "config.h"
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <glib.h>
#include <glib/gi18n.h>
#include <glib-object.h>
#include "gdm-settings-manager.h"
#include "gdm-settings-plugins-engine.h"
#define GDM_SETTINGS_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GDM_TYPE_SETTINGS_MANAGER, GdmSettingsManagerPrivate))
struct GdmSettingsManagerPrivate
{
char *gconf_prefix;
};
enum {
PROP_0,
PROP_GCONF_PREFIX,
};
static void gdm_settings_manager_class_init (GdmSettingsManagerClass *klass);
static void gdm_settings_manager_init (GdmSettingsManager *settings_manager);
static void gdm_settings_manager_finalize (GObject *object);
G_DEFINE_TYPE (GdmSettingsManager, gdm_settings_manager, G_TYPE_OBJECT)
static gpointer manager_object = NULL;
gboolean
gdm_settings_manager_start (GdmSettingsManager *manager,
GError **error)
{
gboolean ret;
g_debug ("Starting settings manager");
gdm_settings_plugins_engine_init (manager->priv->gconf_prefix);
ret = TRUE;
return ret;
}
void
gdm_settings_manager_stop (GdmSettingsManager *manager)
{
g_debug ("Stopping settings manager");
gdm_settings_plugins_engine_shutdown ();
}
static void
_set_gconf_prefix (GdmSettingsManager *self,
const char *prefix)
{
g_free (self->priv->gconf_prefix);
self->priv->gconf_prefix = g_strdup (prefix);
}
static void
gdm_settings_manager_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec)
{
GdmSettingsManager *self;
self = GDM_SETTINGS_MANAGER (object);
switch (prop_id) {
case PROP_GCONF_PREFIX:
_set_gconf_prefix (self, g_value_get_string (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static void
gdm_settings_manager_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec)
{
GdmSettingsManager *self;
self = GDM_SETTINGS_MANAGER (object);
switch (prop_id) {
case PROP_GCONF_PREFIX:
g_value_set_string (value, self->priv->gconf_prefix);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static GObject *
gdm_settings_manager_constructor (GType type,
guint n_construct_properties,
GObjectConstructParam *construct_properties)
{
GdmSettingsManager *manager;
GdmSettingsManagerClass *klass;
klass = GDM_SETTINGS_MANAGER_CLASS (g_type_class_peek (GDM_TYPE_SETTINGS_MANAGER));
manager = GDM_SETTINGS_MANAGER (G_OBJECT_CLASS (gdm_settings_manager_parent_class)->constructor (type,
n_construct_properties,
construct_properties));
return G_OBJECT (manager);
}
static void
gdm_settings_manager_dispose (GObject *object)
{
GdmSettingsManager *manager;
manager = GDM_SETTINGS_MANAGER (object);
gdm_settings_manager_stop (manager);
G_OBJECT_CLASS (gdm_settings_manager_parent_class)->dispose (object);
}
static void
gdm_settings_manager_class_init (GdmSettingsManagerClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->get_property = gdm_settings_manager_get_property;
object_class->set_property = gdm_settings_manager_set_property;
object_class->constructor = gdm_settings_manager_constructor;
object_class->dispose = gdm_settings_manager_dispose;
object_class->finalize = gdm_settings_manager_finalize;
g_object_class_install_property (object_class,
PROP_GCONF_PREFIX,
g_param_spec_string ("gconf-prefix",
"gconf-prefix",
"gconf-prefix",
NULL,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
g_type_class_add_private (klass, sizeof (GdmSettingsManagerPrivate));
}
static void
gdm_settings_manager_init (GdmSettingsManager *manager)
{
manager->priv = GDM_SETTINGS_MANAGER_GET_PRIVATE (manager);
}
static void
gdm_settings_manager_finalize (GObject *object)
{
GdmSettingsManager *manager;
g_return_if_fail (object != NULL);
g_return_if_fail (GDM_IS_SETTINGS_MANAGER (object));
manager = GDM_SETTINGS_MANAGER (object);
g_return_if_fail (manager->priv != NULL);
g_free (manager->priv->gconf_prefix);
G_OBJECT_CLASS (gdm_settings_manager_parent_class)->finalize (object);
}
GdmSettingsManager *
gdm_settings_manager_new (const char *gconf_prefix)
{
if (manager_object != NULL) {
g_object_ref (manager_object);
} else {
manager_object = g_object_new (GDM_TYPE_SETTINGS_MANAGER,
"gconf-prefix", gconf_prefix,
NULL);
g_object_add_weak_pointer (manager_object,
(gpointer *) &manager_object);
}
return GDM_SETTINGS_MANAGER (manager_object);
}
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2007 William Jon McCann <mccann@jhu.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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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 __GDM_SETTINGS_MANAGER_H
#define __GDM_SETTINGS_MANAGER_H
#include <glib-object.h>
#include "gdm-settings-client.h"
G_BEGIN_DECLS
#define GDM_TYPE_SETTINGS_MANAGER (gdm_settings_manager_get_type ())
#define GDM_SETTINGS_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDM_TYPE_SETTINGS_MANAGER, GdmSettingsManager))
#define GDM_SETTINGS_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GDM_TYPE_SETTINGS_MANAGER, GdmSettingsManagerClass))
#define GDM_IS_SETTINGS_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDM_TYPE_SETTINGS_MANAGER))
#define GDM_IS_SETTINGS_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GDM_TYPE_SETTINGS_MANAGER))
#define GDM_SETTINGS_MANAGER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GDM_TYPE_SETTINGS_MANAGER, GdmSettingsManagerClass))
typedef struct GdmSettingsManagerPrivate GdmSettingsManagerPrivate;
#define GDM_SETTINGS_ALL_LEVELS (GDM_SETTINGS_LEVEL_STARTUP | GDM_SETTINGS_LEVEL_CONFIGURATION | GDM_SETTINGS_LEVEL_LOGIN_WINDOW | GDM_SETTINGS_LEVEL_HOST_CHOOSER | GDM_SETTINGS_LEVEL_REMOTE_HOST | GDM_SETTINGS_LEVEL_SHUTDOWN)
typedef struct
{
GObject parent;
GdmSettingsManagerPrivate *priv;
} GdmSettingsManager;
typedef struct
{
GObjectClass parent_class;
} GdmSettingsManagerClass;
GType gdm_settings_manager_get_type (void);
GdmSettingsManager * gdm_settings_manager_new (const char *gconf_prefix);
gboolean gdm_settings_manager_start (GdmSettingsManager *manager,
GError **error);
void gdm_settings_manager_stop (GdmSettingsManager *manager);
G_END_DECLS
#endif /* __GDM_SETTINGS_MANAGER_H */
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2005 - Paolo Maggi
*
* 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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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.
*/
#include "config.h"
#include "gdm-settings-module.h"
#include <gmodule.h>
typedef struct _GdmSettingsModuleClass GdmSettingsModuleClass;
struct _GdmSettingsModuleClass
{
GTypeModuleClass parent_class;
};
struct _GdmSettingsModule
{
GTypeModule parent_instance;
GModule *library;
char *path;
GType type;
};
typedef GType (*GdmSettingsModuleRegisterFunc) (GTypeModule *);
G_DEFINE_TYPE (GdmSettingsModule, gdm_settings_module, G_TYPE_TYPE_MODULE)
static gboolean
gdm_settings_module_load (GTypeModule *gmodule)
{
GdmSettingsModule *module;
GdmSettingsModuleRegisterFunc register_func;
gboolean res;
module = GDM_SETTINGS_MODULE (gmodule);
g_debug ("Loading %s", module->path);
module->library = g_module_open (module->path, 0);
if (module->library == NULL) {
g_warning (g_module_error ());
return FALSE;
}
/* extract symbols from the lib */
res = g_module_symbol (module->library, "register_gdm_settings_plugin", (void *) &register_func);
if (! res) {
g_warning (g_module_error ());
g_module_close (module->library);
return FALSE;
}
g_assert (register_func);
module->type = register_func (gmodule);
if (module->type == 0) {
g_warning ("Invalid gdm settings plugin in module %s", module->path);
return FALSE;
}
return TRUE;
}
static void
gdm_settings_module_unload (GTypeModule *gmodule)
{
GdmSettingsModule *module = GDM_SETTINGS_MODULE (gmodule);
g_debug ("Unloading %s", module->path);
g_module_close (module->library);
module->library = NULL;
module->type = 0;
}
const gchar *
gdm_settings_module_get_path (GdmSettingsModule *module)
{
g_return_val_if_fail (GDM_IS_SETTINGS_MODULE (module), NULL);
return module->path;
}
GObject *
gdm_settings_module_new_object (GdmSettingsModule *module)
{
g_debug ("Creating object of type %s", g_type_name (module->type));
if (module->type == 0) {
return NULL;
}
return g_object_new (module->type, NULL);
}
static void
gdm_settings_module_init (GdmSettingsModule *module)
{
g_debug ("GdmSettingsModule %p initialising", module);
}
static void
gdm_settings_module_finalize (GObject *object)
{
GdmSettingsModule *module = GDM_SETTINGS_MODULE (object);
g_debug ("GdmSettingsModule %p finalizing", module);
g_free (module->path);
G_OBJECT_CLASS (gdm_settings_module_parent_class)->finalize (object);
}
static void
gdm_settings_module_class_init (GdmSettingsModuleClass *class)
{
GObjectClass *object_class = G_OBJECT_CLASS (class);
GTypeModuleClass *module_class = G_TYPE_MODULE_CLASS (class);
object_class->finalize = gdm_settings_module_finalize;
module_class->load = gdm_settings_module_load;
module_class->unload = gdm_settings_module_unload;
}
GdmSettingsModule *
gdm_settings_module_new (const char *path)
{
GdmSettingsModule *result;
if (path == NULL || path[0] == '\0') {
return NULL;
}
result = g_object_new (GDM_TYPE_SETTINGS_MODULE, NULL);
g_type_module_set_name (G_TYPE_MODULE (result), path);
result->path = g_strdup (path);
return result;
}
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2005 - Paolo Maggi
*
* 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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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 GDM_SETTINGS_MODULE_H
#define GDM_SETTINGS_MODULE_H
#include <glib-object.h>
G_BEGIN_DECLS
#define GDM_TYPE_SETTINGS_MODULE (gdm_settings_module_get_type ())
#define GDM_SETTINGS_MODULE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDM_TYPE_SETTINGS_MODULE, GdmSettingsModule))
#define GDM_SETTINGS_MODULE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDM_TYPE_SETTINGS_MODULE, GdmSettingsModuleClass))
#define GDM_IS_SETTINGS_MODULE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDM_TYPE_SETTINGS_MODULE))
#define GDM_IS_SETTINGS_MODULE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), GDM_TYPE_SETTINGS_MODULE))
#define GDM_SETTINGS_MODULE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GDM_TYPE_SETTINGS_MODULE, GdmSettingsModuleClass))
typedef struct _GdmSettingsModule GdmSettingsModule;
GType gdm_settings_module_get_type (void) G_GNUC_CONST;
GdmSettingsModule *gdm_settings_module_new (const gchar *path);
const char *gdm_settings_module_get_path (GdmSettingsModule *module);
GObject *gdm_settings_module_new_object (GdmSettingsModule *module);
G_END_DECLS
#endif
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2002-2005 Paolo Maggi
* Copyright (C) 2007 William Jon McCann <mccann@jhu.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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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.
*/
#include "config.h"
#include "gdm-settings-plugin.h"
G_DEFINE_TYPE (GdmSettingsPlugin, gdm_settings_plugin, G_TYPE_OBJECT)
static void
dummy (GdmSettingsPlugin *plugin)
{
/* Empty */
}
static void
gdm_settings_plugin_class_init (GdmSettingsPluginClass *klass)
{
klass->activate = dummy;
klass->deactivate = dummy;
}
static void
gdm_settings_plugin_init (GdmSettingsPlugin *plugin)
{
/* Empty */
}
void
gdm_settings_plugin_activate (GdmSettingsPlugin *plugin)
{
g_return_if_fail (GDM_IS_SETTINGS_PLUGIN (plugin));
GDM_SETTINGS_PLUGIN_GET_CLASS (plugin)->activate (plugin);
}
void
gdm_settings_plugin_deactivate (GdmSettingsPlugin *plugin)
{
g_return_if_fail (GDM_IS_SETTINGS_PLUGIN (plugin));
GDM_SETTINGS_PLUGIN_GET_CLASS (plugin)->deactivate (plugin);
}
This diff is collapsed.
This diff is collapsed.
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2002-2005 - Paolo Maggi
* Copyright (C) 2007 William Jon McCann <mccann@jhu.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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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 __GDM_SETTINGS_PLUGINS_ENGINE_H__
#define __GDM_SETTINGS_PLUGINS_ENGINE_H__
#include <glib.h>
typedef struct _GdmSettingsPluginInfo GdmSettingsPluginInfo;
gboolean gdm_settings_plugins_engine_init (const char *gconf_prefix);
void gdm_settings_plugins_engine_shutdown (void);
void gdm_settings_plugins_engine_garbage_collect (void);
const GList *gdm_settings_plugins_engine_get_plugins_list (void);
gboolean gdm_settings_plugins_engine_activate_plugin (GdmSettingsPluginInfo *info);
gboolean gdm_settings_plugins_engine_deactivate_plugin (GdmSettingsPluginInfo *info);
gboolean gdm_settings_plugins_engine_plugin_is_active (GdmSettingsPluginInfo *info);
gboolean gdm_settings_plugins_engine_plugin_is_available (GdmSettingsPluginInfo *info);
const char *gdm_settings_plugins_engine_get_plugin_name (GdmSettingsPluginInfo *info);
const char *gdm_settings_plugins_engine_get_plugin_description (GdmSettingsPluginInfo *info);
const char **gdm_settings_plugins_engine_get_plugin_authors (GdmSettingsPluginInfo *info);
const char *gdm_settings_plugins_engine_get_plugin_website (GdmSettingsPluginInfo *info);
const char *gdm_settings_plugins_engine_get_plugin_copyright (GdmSettingsPluginInfo *info);
#endif /* __GDM_SETTINGS_PLUGINS_ENGINE_H__ */
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
*
* Copyright (C) 2007 William Jon McCann <mccann@jhu.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; either version 2 of the License, or
* (at your option) any later version.
*
* 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 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
*/
#include "config.h"