Re: Unique BonoboControl
- From: "Gustavo J. A. M. Carneiro" <gjc inescporto pt>
- To: Mikoyan <miko2 pandora be>
- Cc: gnome-components-list gnome org
- Subject: Re: Unique BonoboControl
- Date: Tue, 04 Nov 2003 11:25:23 +0000
A Seg, 2003-11-03 às 20:37, Mikoyan escreveu:
> Hi list,
>
> Let me first describe the situation before I'll ask the
> question.
>
> I've an simple BonoboControl of which only one may be
> active at the same time. E.g. I've such a control and an object.
> The object sends corba calls to the control. When this
> object is created, if first checks if such control is
> running. If not, it creates the control in a bonobowindow,
> and starts sending the messages to the control. Otherwise
> it will just sends the messages to the already running
> control... (which may be embedded/activated by any other
> app).
This is quite easy to accomplish using a global instance variable and
reference counting. For example:
static BonoboObject *object = NULL;
static void _object_destroyed (BonoboObject *obj)
{
object = NULL;
}
static BonoboObject *
my_factory_fn (BonoboGenericFactory *this,
const char *object_id,
void *data)
{
if (!strcmp (object_id, "OAFIID:My_BonoboControl")) {
if (object == NULL) {
object = my_bonobo_control_new ();
g_signal_connect (G_OBJECT (object), "destroy", _object_destroyed, NULL);
} else
bonobo_object_ref (object);
return object;
} else
g_warning ("Unknown OAFIID 's'", object_id);
return object;
}
>
> I've looked at gedit code and at the thread of this mailing
> list "weird diagnostics from trivial Bonobo server", but I'm
> still not sure what to do.
>
> So the question is simple: what should I do? And a step
> per step explanation would be appreciated, however, any
> answer would be very appreciated :-) (I'm currently playing
> with bonobo_activation_* stuff, but i'm not very sure what
> i'm doing :))
>
> (Btw, what is the UniqueApplication thing about?)
See GEP 12 here: http://developer.gnome.org/gep/gep-12.html
>
> Thanks in adavance, Steven
>
>
>
> _______________________________________________
> gnome-components-list mailing list
> gnome-components-list gnome org
> http://mail.gnome.org/mailman/listinfo/gnome-components-list
--
Gustavo João Alves Marques Carneiro
<gjc inescporto pt> <gustavo users sourceforge net>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]