[Ekiga-devel-list] [RFC] Plugins/Order of initialization in Ekiga
- From: Jan Schampera <jan schampera web de>
- To: Ekiga development mailing list <ekiga-devel-list gnome org>
- Subject: [Ekiga-devel-list] [RFC] Plugins/Order of initialization in Ekiga
- Date: Sat, 10 Mar 2007 18:34:09 +0100
Folks,
as discussed before on IRC, Ekiga's current initialization procedure is
either in the wrong logic, wrong order or too inflexible to introduce
the new plugin system:
main()
+---- PProcess::PreInitialise ()
+---- g_thread_init ()
+---- gdk_threads_init ()
+---- gm_conf_init ()
+---- [Gettext init]
+---- gnome_program_init ()
+---- [IF BONOBO] bonobo_component_init ()
+---- PTrace::Initialise ()
+---- GnomeMeeting::Process ()->BuildGUI ()
+---- gnomemeeting_addressbook_init ()
+---- gnomemeeting_stock_icons_init ()
+---- [Create the windows]
+---- [IF DBUS] gnomemeeting_dbus_component_new ();
+---- gm_statusicon_new ()
+---- GnomeMeeting::Process ()->DetectInterfaces ()
+---- GnomeMeeting::Process ()->Init ()
+---- GnomeMeeting::Process ()->DetectCodecs ()
+---- gnomemeeting_conf_init ()
+---- [UI init]
+---- gtk_main ()
Where to hook plugin initialization?
IMHO it needs
- a working gmconf
- MAYBE a pre-initialized but not built UI
to make all other components available as plugins/with plugin addons.
In the current (above) order my first hook would be right after the
PTrace initializer.
Regards,
Jan
--
"One of the main causes of the fall of the Roman Empire was that,
lacking zero, they had no way to indicate successful termination of
their C programs" --Robert Firth
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]