* AT-SPI - Assistive Technology Service Provider Interface
* (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
*
- * Copyright 2001 Sun Microsystems Inc.
+ * Copyright 2001, 2002 Sun Microsystems Inc.,
+ * Copyright 2001, 2002 Ximian, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
role_table [ATK_ROLE_STATUSBAR] = Accessibility_ROLE_STATUS_BAR;
role_table [ATK_ROLE_TABLE] = Accessibility_ROLE_TABLE;
role_table [ATK_ROLE_TABLE_CELL] = Accessibility_ROLE_TABLE_CELL;
- role_table [ATK_ROLE_TABLE_COLUMN_HEADER] = Accessibility_ROLE_COLUMN_HEADER;
- role_table [ATK_ROLE_TABLE_ROW_HEADER] = Accessibility_ROLE_ROW_HEADER;
+ role_table [ATK_ROLE_TABLE_COLUMN_HEADER] = Accessibility_ROLE_TABLE_COLUMN_HEADER;
+ role_table [ATK_ROLE_TABLE_ROW_HEADER] = Accessibility_ROLE_TABLE_ROW_HEADER;
role_table [ATK_ROLE_TEAR_OFF_MENU_ITEM] = Accessibility_ROLE_TEAROFF_MENU_ITEM;
role_table [ATK_ROLE_TERMINAL] = Accessibility_ROLE_TERMINAL;
role_table [ATK_ROLE_TEXT] = Accessibility_ROLE_TEXT;
CORBA_Environment *ev)
{
AtkObject *object = get_atkobject_from_servant (servant);
+ AtkStateSet *atk_set;
+ SpiStateSet *set;
+ Accessibility_StateSet retval;
bonobo_return_val_if_fail (object != NULL, NULL, ev);
- printf ("SpiAccessible get_state.\n");
+ atk_set = atk_object_ref_state_set (object);
+
+ set = spi_state_set_new (atk_set);
+ retval = bonobo_object_dup_ref (
+ BONOBO_OBJREF(set),
+ ev);
- /* TODO: implement the bonobo stateset class */
- return (Accessibility_StateSet) NULL;
+ return retval;
}
/*
impl_accessibility_accessible_get_role_name (PortableServer_Servant servant,
CORBA_Environment *ev)
{
+ const gchar *role_name;
AtkRole role;
AtkObject *object = get_atkobject_from_servant (servant);
role = atk_object_get_role (object);
- return CORBA_string_dup (atk_role_get_name (role));
+ role_name = atk_role_get_name (role);
+ if (role_name)
+ return CORBA_string_dup (role_name);
+ else
+ return CORBA_string_dup ("");
}
static void