Some container-side functions.




Hey Miguel,

	A number of remote container-side routines have been
implemented as helper functions, e.g. gnome_view_client_do_verb.  I've
always found this a little bit unsettling, and I have another idea
which I've implemented for the GnomeViews which you might like.

	The idea is to move these routines into the container-side
point-of-contact for the remote containee-side object.  So, for
example, gnome_view_client_do_verb() changes to
gnome_view_frame_view_do_verb().  Functions like
gnome_embeddable_client_get_verbs() can change to
gnome_client_site_embeddable_get_verbs().

	I think this is much clearer to the developer, since it
provides him with a uniform place to look when he's hunting for a
routine.  So for the ViewFrame, for example, I've added the following
routines:

void		  gnome_view_frame_bind_to_view	   (GnomeViewFrame *view_frame,
						    GNOME_View view);
GNOME_View	  gnome_view_frame_get_view	   (GnomeViewFrame *view_frame);

void		  gnome_view_frame_view_activate   (GnomeViewFrame *view_frame);
void		  gnome_view_frame_view_deactivate (GnomeViewFrame *view_frame);
void		  gnome_view_frame_view_do_verb	   (GnomeViewFrame *view_frame,
						    const char *verb_name);


I actually like this quite a lot.  Although these aren't
strictly-speaking operations on the GnomeViewFrame, these routines
seem much more at-home here, and they redefine the ViewFrame in a way
that makes sense: A GnomeViewFrame acts as a container-side proxy or
point-of-contact for an embedded GnomeView.

	So what do you think?  Should I do this to the GnomeClientSite
and stuff as well?

Nat



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