Re: CORBA-equivalent of bonobo_ui_component_set_container()



Hi Murray,

	Though you said to ignore this you make an important point :-)

On Thu, 2002-03-28 at 12:04, Murray Cumming wrote:
> As part of the Bonobo In C++ effort, I'm taking the first few steps
> towards converting the bonoboui_hello example to C++. I'm finding that
> some of the C wrapper code is more than just syntatical sugar - it
> messes around with the internal data structures of the stubs. That makes
> it difficult to know how to do the same thing with only the CORBA
> methods.

	Right - so; the thing is that we provide a lot of interfaces, and we
also provide a set of standard C implementations. However - it seems to
me there are often two functions of the methods an object exposes -
those that are intended as it's public interface, and those that are
used to construct / manipulate it. The CORBA interface only provides
those public methods. It would / might be possible to provide another
'protected' sort of interface to allow construction of remote abstract
objects to do what you want - but really this is not desirable I think.

	Thus to implement a BonoboUIComponent you can sub-class the Bonobo
version [ which really just provides wrappers that allow NULL ev's [
mostly ] - and hold the UI component name as a constant ].

	Or ... you can implement a C++ version, that uses whatever slot /
signal mechanism you like to handle verb / id callbacks, and has a
thoroughly un-inhibited C++ implementation. Whether to re-implment or
wrap is your decision. For the UIContainer side it's more tough -
re-implementing that will be virtually impossible - but then as soon as
we touch the Gtk+ side, it becomes a bit of a C-Gtk+ API vs. CORBA
discontinuity which is hard to know how to handle.

	Does that help ? good question thought,

	Regards,

		Michael.

	



> If anybody has written similar code in a non-C language (perl, or
> python, for example) then that might be helpful to look at.
> 
> At the moment I can't find a CORBA-only equivalent of these lines at the
> end of bonobo_ui_component_set_container():
> 
>   bonobo_ui_component_unset_container (component, NULL);
>   component->priv->container = ref_;
> 
> -- 
> Murray Cumming
> murrayc usa net
> www.murrayc.com
> 
> _______________________________________________
> gnome-components-list mailing list
> gnome-components-list gnome org
> http://mail.gnome.org/mailman/listinfo/gnome-components-list
-- 
 mmeeks gnu org  <><, Pseudo Engineer, itinerant idiot




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