1 /*  $Id$
2  *
3  *  This program is free software; you can redistribute it and/or modify
4  *  it under the terms of the GNU General Public License as published by
5  *  the Free Software Foundation; either version 2 of the License, or
6  *  (at your option) any later version.
7  *
8  *  This program is distributed in the hope that it will be useful,
9  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  *  GNU General Public License for more details.
12  *
13  *  You should have received a copy of the GNU General Public License
14  *  along with this program; if not, write to the Free Software
15  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16  *
17  *  Copyright (C) 1999-2004 Olivier Fourdan (fourdan@xfce.org)
18  *  Copyright (C) 2011 Peter de Ridder (peter@xfce.org)
19  *
20  *  Portions based Thinice port by
21  *                       Tim Gerla <timg@rrv.net>,
22  *                       Tomas �gren <stric@ing.umu.se,
23  *                       Richard Hult <rhult@codefactory.se>
24  *  Portions based on Smooth theme by
25  *                       Andrew Johnson <ajgenius@ajgenius.us>
26  *  Portions based on IceGradient theme by
27  *                       Tim Gerla <timg@means.net>
28  *                       Tomas Ögren <stric@ing.umu.se>
29  *                       JM Perez <jose.perez@upcnet.es>
30  *  Portions based on Wonderland theme by
31  *                       Garrett LeSage
32  *                       Alexander Larsson
33  *                       Owen Taylor <otaylor@redhat.com>
34  *  Portions based on Raleigh theme by
35  *                       Owen Taylor <otaylor@redhat.com>
36  *  Portions based on Notif theme
37  *  Portions based on Notif2 theme
38  *  Portions based on original GTK theme
39  */
40 
41 #ifdef HAVE_CONFIG_H
42 #  include "config.h"
43 #endif
44 
45 #include <gmodule.h>
46 #include <gtk/gtk.h>
47 #include "xfce_engine.h"
48 
49 G_MODULE_EXPORT void theme_init(GTypeModule * module);
50 G_MODULE_EXPORT void theme_exit(void);
51 G_MODULE_EXPORT GtkThemingEngine *create_engine(void);
52 G_MODULE_EXPORT const gchar * g_module_check_init (GModule * module);
53 
54 
55 
theme_init(GTypeModule * module)56 G_MODULE_EXPORT void theme_init(GTypeModule * module)
57 {
58     xfce_engine_register_types(module);
59 }
60 
theme_exit(void)61 G_MODULE_EXPORT void theme_exit(void)
62 {
63 }
64 
create_engine(void)65 G_MODULE_EXPORT GtkThemingEngine *create_engine(void)
66 {
67     GtkThemingEngine *ptr;
68     ptr = GTK_THEMING_ENGINE(g_object_new(XFCE_TYPE_ENGINE, "name", "xfce", NULL));
69     return ptr;
70 }
71 
g_module_check_init(GModule * module)72 G_MODULE_EXPORT const gchar * g_module_check_init (GModule * module)
73 {
74   return gtk_check_version (GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION - GTK_INTERFACE_AGE);
75 }
76