Added majority of libpurple functions used by pidgin-carman.
[python-purple] / glib.pxd
index d71cb32..97664ce 100644 (file)
--- a/glib.pxd
+++ b/glib.pxd
 
 cdef extern from "glib.h":
     ctypedef void *gpointer
+    ctypedef void *gconstpointer
     ctypedef int gint
     ctypedef unsigned int guint
+    ctypedef unsigned long gulong
     ctypedef gint gboolean
     ctypedef gboolean (*GSourceFunc) (gpointer data)
+    ctypedef unsigned int gsize
 
-    # GHashTable is an opaque data structure
     ctypedef struct GHashTable:
-        void *none
+        pass
+
+    ctypedef struct GMainContext:
+        pass
 
     struct _GSList:
         gpointer data
@@ -39,5 +44,18 @@ cdef extern from "glib.h":
         _GList *prev
     ctypedef _GList GList
 
+    ctypedef guint GHashFunc (gconstpointer)
+    ctypedef gboolean GEqualFunc (gconstpointer, gconstpointer)
+
+    gboolean g_str_equal (gconstpointer, gconstpointer)
+    guint g_str_hash (gconstpointer)
+
+    GHashTable *g_hash_table_new (GHashFunc, GEqualFunc)
+    void g_hash_table_insert (GHashTable*, gpointer, gpointer)
+
     guint g_timeout_add(guint interval, GSourceFunc function, gpointer data)
+    guint g_timeout_add_seconds(guint interval, GSourceFunc function, gpointer data)
+
+    gboolean g_main_context_iteration (GMainContext *context, gboolean may_block)
+
     gboolean g_source_remove(guint tag)