X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=libspi%2Faction.c;h=7024a7a541ce36369db6de779da54fab1c337308;hb=48e66ae4721d6da701864b1b171bcf542e9211fa;hp=13247e1b0130e3aac996d0dbbce39764307e6ebd;hpb=2a52cece4bf09e15a526a0e7b67569a5e0de6b43;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/libspi/action.c b/libspi/action.c index 13247e1..7024a7a 100644 --- a/libspi/action.c +++ b/libspi/action.c @@ -35,7 +35,7 @@ #include /* - * This pulls the definition of the Action bonobo object + * This pulls the definition of the SpiAction bonobo object */ #include "action.h" @@ -44,11 +44,11 @@ */ static void -action_class_init (ActionClass *klass); +spi_action_class_init (SpiActionClass *klass); static void -action_init (Action *action); +spi_action_init (SpiAction *action); static void -action_finalize (GObject *obj); +spi_action_finalize (GObject *obj); static CORBA_long impl__get_nActions(PortableServer_Servant servant, CORBA_Environment * ev); @@ -70,50 +70,19 @@ impl_getKeyBinding (PortableServer_Servant servant, static GObjectClass *parent_class; -GType -action_get_type (void) -{ - static GType type = 0; - - if (!type) { - static const GTypeInfo tinfo = { - sizeof (ActionClass), - (GBaseInitFunc) NULL, - (GBaseFinalizeFunc) NULL, - (GClassInitFunc) action_class_init, - (GClassFinalizeFunc) NULL, - NULL, /* class data */ - sizeof (Action), - 0, /* n preallocs */ - (GInstanceInitFunc) action_init, - NULL /* value table */ - }; - - /* - * Bonobo_type_unique auto-generates a load of - * CORBA structures for us. All derived types must - * use bonobo_type_unique. - */ - type = bonobo_type_unique ( - BONOBO_OBJECT_TYPE, - POA_Accessibility_Action__init, - NULL, - G_STRUCT_OFFSET (ActionClass, epv), - &tinfo, - "AccessibleAction"); - } - - return type; -} +BONOBO_TYPE_FUNC_FULL (SpiAction, + Accessibility_Action, + BONOBO_OBJECT_TYPE, + spi_action); static void -action_class_init (ActionClass *klass) +spi_action_class_init (SpiActionClass *klass) { GObjectClass * object_class = (GObjectClass *) klass; POA_Accessibility_Action__epv *epv = &klass->epv; parent_class = g_type_class_peek_parent (klass); - object_class->finalize = action_finalize; + object_class->finalize = spi_action_finalize; /* Initialize epv table */ @@ -126,24 +95,24 @@ action_class_init (ActionClass *klass) } static void -action_init (Action *action) +spi_action_init (SpiAction *action) { } static void -action_finalize (GObject *obj) +spi_action_finalize (GObject *obj) { - Action *action = ACTION (obj); + SpiAction *action = SPI_ACTION (obj); g_object_unref (action->atko); action->atko = NULL; parent_class->finalize (obj); } -Action * -action_interface_new (AtkObject *obj) +SpiAction * +spi_action_interface_new (AtkObject *obj) { - Action *new_action = - ACTION(g_object_new (ACTION_TYPE, NULL)); + SpiAction *new_action = + SPI_ACTION(g_object_new (SPI_ACTION_TYPE, NULL)); new_action->atko = obj; g_object_ref (obj); return new_action; @@ -153,7 +122,7 @@ static CORBA_long impl__get_nActions(PortableServer_Servant servant, CORBA_Environment * ev) { - Action *action = ACTION (bonobo_object_from_servant(servant)); + SpiAction *action = SPI_ACTION (bonobo_object_from_servant(servant)); return (CORBA_long) atk_action_get_n_actions (ATK_ACTION(action->atko)); } @@ -161,7 +130,7 @@ static CORBA_boolean impl_doAction (PortableServer_Servant servant, const CORBA_long index, CORBA_Environment * ev) { - Action *action = ACTION (bonobo_object_from_servant (servant)); + SpiAction *action = SPI_ACTION (bonobo_object_from_servant (servant)); return (CORBA_boolean) atk_action_do_action (ATK_ACTION(action->atko), (gint) index); } @@ -171,8 +140,14 @@ impl_getDescription (PortableServer_Servant servant, const CORBA_long index, CORBA_Environment * ev) { - Action *action = ACTION (bonobo_object_from_servant(servant)); - return CORBA_string_dup (atk_action_get_description (ATK_ACTION(action->atko), (gint) index)); + SpiAction *action = SPI_ACTION (bonobo_object_from_servant(servant)); + const gchar *rv; + + rv = atk_action_get_description (ATK_ACTION(action->atko), (gint) index); + if (rv) + return CORBA_string_dup (rv); + else + return CORBA_string_dup (""); } @@ -181,8 +156,14 @@ impl_getName (PortableServer_Servant servant, const CORBA_long index, CORBA_Environment * ev) { - Action *action = ACTION (bonobo_object_from_servant(servant)); - return CORBA_string_dup (atk_action_get_name (ATK_ACTION(action->atko), (gint) index)); + SpiAction *action = SPI_ACTION (bonobo_object_from_servant(servant)); + const gchar *rv; + + rv = atk_action_get_name (ATK_ACTION(action->atko), (gint) index); + if (rv) + return CORBA_string_dup (rv); + else + return CORBA_string_dup (""); } static CORBA_string @@ -190,6 +171,12 @@ impl_getKeyBinding (PortableServer_Servant servant, const CORBA_long index, CORBA_Environment * ev) { - Action *action = ACTION (bonobo_object_from_servant(servant)); - return CORBA_string_dup (atk_action_get_keybinding (ATK_ACTION(action->atko), (gint) index)); + SpiAction *action = SPI_ACTION (bonobo_object_from_servant(servant)); + const gchar *rv; + + rv = atk_action_get_keybinding (ATK_ACTION(action->atko), (gint) index); + if (rv) + return CORBA_string_dup (rv); + else + return CORBA_string_dup (""); }