BonoboGenericFactory for GNOME 2
- From: Martin Baulig <martin home-of-linux org>
- To: gnome-components-list gnome org
- Cc: michael ximian com, dietmar ximian com
- Cc: mjs eazel com
- Subject: BonoboGenericFactory for GNOME 2
- Date: 25 Apr 2001 13:55:52 +0200
Hi guys,
this mail basically applies to the GNOME 2 version of Bonobo (the
libbonobo and libbonoboui CVS modules) only since we need to keep
binary compatibility in the GNOME 1.4 version.
[A little info for those of you who aren't familar with Bonobo 2:
Michael merged BonoboXObject and BonoboObject in libbonobo, so I'm
basically speaking of a BonoboObject with the functionality of a
BonoboXObject here.]
Ok, so Dietmar just asked me
> We still have the problem that a BonoboGenericFactory is a GObject,
> but not a BonoboObject and thus also not support the Unkown
> interface. Is there a change to change GNOME_ObjectFactory to inherit
> from Unknown for GNOME 2.0 ?
I think the question is what we want and why we want it :-)
Basically, we have two "problems" here:
a) BonoboGenericFactory is using GNOME_ObjectFactory which is
not a Bonobo::Unknown.
b) GNOME_ObjectFactory is part of OAF and as such also useful for
non-Bonobo code
To summarize, a) means that we cannot just use BonoboObject here
and b) means that if I was the maintainer of OAF, I'd say no to
making GNOME::ObjectFactory a Bonobo::Unknown.
So, what do we want and why do we want it ?
Well, I think what we want is clear, making BonoboGenericFactory a
BonoboObject.
But why and which advantage does it have for us:
i) if we just want to do this to clean up the code in
bonobo-generic-factory.c and bonobo-shlib-factory.c, then I
see little to no way to do this.
ii) if we want to make BonoboGenericFactory a BonoboObject to make it
more easy to derive from it and to make it more consistent with the
rest of Bonobo, then I actually see a way to do this with a little
change in OAF and a little change in BonoboObject.
So, let's assume we want to do it because of (ii).
Here's how I think it can be done:
1.) First of all, we need to ask Maciej to either rename or remove the
`ref' and `unref' methods in GNOME::ObjectFactory (from a `grep -r'
in oaf, they don't seem to be used at all).
2.) After that, we create a Bonobo::GenericFactory which derives from
both GNOME::ObjectFactory and Bonobo::Unknown
3.) Then, we need to add a way to override the vepv to BonoboObject.
How does this sound ?
--
Martin Baulig
martin gnome org (private)
baulig suse de (work)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]