From: Christian H. <ch...@us...> - 2003-09-30 22:55:26
|
Update of /cvsroot/gaim/gaim/src In directory sc8-pr-cvs1:/tmp/cvs-serv20484 Modified Files: core.c core.h Log Message: Added more core wrappers for the glib mainloops, and replaced the last GTK+ code in OSCAR with them. Index: core.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/core.c,v retrieving revision 1.59 retrieving revision 1.60 diff -u -d -p -r1.59 -r1.60 --- core.c 29 Sep 2003 23:39:01 -0000 1.59 +++ core.c 30 Sep 2003 22:55:22 -0000 1.60 @@ -150,10 +150,23 @@ gaim_core_get_version(void) return VERSION; } +gboolean +gaim_core_mainloop_events_pending(void) +{ + return g_main_context_pending(g_main_context_default()); +} + void gaim_core_mainloop_iteration(void) { g_main_context_iteration(g_main_context_default(), FALSE); +} + +void +gaim_core_mainloop_finish_events(void) +{ + while (gaim_core_mainloop_events_pending()) + gaim_core_mainloop_iteration(); } const char * Index: core.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/core.h,v retrieving revision 1.64 retrieving revision 1.65 diff -u -d -p -r1.64 -r1.65 --- core.h 29 Sep 2003 23:39:01 -0000 1.64 +++ core.h 30 Sep 2003 22:55:22 -0000 1.65 @@ -64,6 +64,13 @@ void gaim_core_quit(void); const char *gaim_core_get_version(void); /** + * Returns whether or not there are any mainloop events pending. + * + * @return TRUE if there are mainloop events pending. FALSE otherwise. + */ +gboolean gaim_core_mainloop_events_pending(void); + +/** * Iterates once through the gaim mainloop. * * This is in actuality a wrapper around glib's mainloop iteration @@ -72,6 +79,11 @@ const char *gaim_core_get_version(void); * All UIs not using glib must call this in a timer. */ void gaim_core_mainloop_iteration(void); + +/** + * Iterates through all remaining events in the mainloop. + */ +void gaim_core_mainloop_finish_events(void); /** * Returns the ID of the UI that is using the core. |