00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef GCONFMM_CALLBACK_H
00023 #define GCONFMM_CALLBACK_H
00024
00025 extern "C"
00026 {
00027 #include <gconf/gconf-client.h>
00028 }
00029
00030 #include <glibmm/object.h>
00031 #include <gconfmm/entry.h>
00032
00033 namespace Gnome
00034 {
00035
00036 namespace Conf
00037 {
00038
00039 typedef sigc::slot<void, guint, Entry> Callback;
00040
00041 class Client;
00042
00043 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00044 class CallbackHolder
00045 {
00046 public:
00047
00048 CallbackHolder(Callback slot);
00049 ~CallbackHolder();
00050
00051 void add(Client* pObj);
00052
00053 Callback m_Slot;
00054
00055 static void destroy(void *data);
00056 static void call(GConfClient *client, guint i, GConfEntry *entry, void *data);
00057 };
00058 #endif
00059
00060 }
00061 }
00062
00063 #endif //GCONFMM_CALLBACK_H