integrating CORBA services from a GTK_MODULE



Hi Folks:

In conjunction with accessibility support for Gnome, I have
written a GTK_MODULE that exports ATK accessibility support for
GTK+ widgets via bonobo interfaces.  The intent is to provide
transparent out-of-process accessibility services for existing
GTK+-2.0 applications without the need to modify those apps in 
any way.

Of course this means that the GTK module contains the server-side
support for the accessibility interfaces.  At the moment the
module calls the ATK api inside gtk_module_init() to obtain
the "root" accessible representation of the application instance,
wraps this ATK object in a bonobo representation 
(Accessibility::Accessible) and registers with a central 
accessibility service via OAF (soon to be bonobo-activate ;-).

So far so good... except that the registration call really should
initiate a callback, and at the moment the GTK_MODULE does not
initiate a CORBA event loop.  What I'd like to do is somehow 
hook into g_main/gtk_main so that when the main event loop is
started by the target program, the CORBA event loop is integrated
with it (in the manner of bonobo_main()).  Of course I also need
to defer the registration call until the server loop is started,
so that the callback can be serviced - via g_idle_add, presumably).

How is the best way to do this (force CORBA event loop integration
when the GTK event loop starts) within the current GTK event loop
model?  I can think of several approaches but would like to do it
in the 'sanctioned' way.

Thanks in advance,

Bill



-- 
--------------
Bill Haneman
Gnome Accessibility / Batik SVG Toolkit
Sun Microsystems Ireland




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]