Re: [g-a-devel]active-descendant-changed signal and at-spi
- From: Michael Meeks <michael ximian com>
- To: Padraig O'Briain <Padraig Obriain sun com>
- Cc: Bill Haneman <bill haneman sun com>, accessibility mailing list <gnome-accessibility-devel gnome org>
- Subject: Re: [g-a-devel]active-descendant-changed signal and at-spi
- Date: 07 Dec 2002 08:20:03 +0000
Hi Padraig,
On Fri, 2002-12-06 at 09:58, Padraig O'Briain wrote:
> I have managed to add support to at-spi for active-descendat-changed signal
> which does not crash the application. Comments requested.
...
> -spi_init_any_object (CORBA_any *any, CORBA_Object o)
> +spi_init_any_object (CORBA_any *any, CORBA_Object *o)
> {
> CORBA_Environment ev;
> CORBA_exception_init (&ev);
> +
> any->_type = TC_CORBA_Object;
> - any->_value = CORBA_Object_duplicate (o, &ev);
> + any->_value = o;
That is in fact correct. The way to think of what you need to ram into
an any's _value is (perhaps) this:
"I want to pass a pointer to a struct element"
This is because everything is recursively marshalled, and it makes
struct/union/sequence/array marshalling trivial.
Thus in a struct we have:
struct {
CORBA_long a;
CORBA_Object b;
CORBA_double c;
CORBA_any d;
CORBA_char *e;
};
Thus we need _value to be either a CORBA_long *, a CORBA_Object *, a
CORBA_double *, a CORBA_any * or a CORBA_char _**_ :-)
HTH - and good work,
Regards,
Michael.
--
mmeeks gnu org <><, Pseudo Engineer, itinerant idiot
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]