Fixed bug in spi_accessible_new, codepath for bonobo-accessible objects.
[platform/core/uifw/at-spi2-atk.git] / cspi / spi_accessible.c
index c8c13ac..ead5870 100644 (file)
@@ -607,6 +607,23 @@ Accessible_isTable (Accessible *obj)
 }
 
 /**
+ * Accessible_isStreamableContent:
+ * @obj: a pointer to the #Accessible instance to query.
+ *
+ * Query whether the specified #Accessible implements
+ *          #AccessibleStreamableContent.
+ *
+ * Returns: #TRUE if @obj implements the #AccessibleStreamableContent interface,
+ *          #FALSE otherwise.
+**/
+SPIBoolean
+Accessible_isStreamableContent (Accessible *obj)
+{
+  return cspi_accessible_is_a (obj,
+                             "IDL:Accessibility/StreamableContent:1.0");
+}
+
+/**
  * Accessible_isText:
  * @obj: a pointer to the #Accessible instance to query.
  *
@@ -759,6 +776,22 @@ Accessible_getSelection (Accessible *obj)
 
 
 /**
+ * Accessible_getStreamableContent:
+ * @obj: a pointer to the #Accessible instance to query.
+ *
+ * Get the #AccessibleStreamableContent interface for an #Accessible.
+ *
+ * Returns: a pointer to an #AccessibleStreamableContent interface instance, or
+ *          NULL if @obj does not implement #AccessibleStreamableContent.
+ **/
+AccessibleStreamableContent *
+Accessible_getStreamableContent (Accessible *obj)
+{
+  return (AccessibleStreamableContent *) Accessible_queryInterface (
+         obj, "IDL:Accessibility/StreamableContent:1.0");
+}
+
+/**
  * Accessible_getTable:
  * @obj: a pointer to the #Accessible instance to query.
  *
@@ -891,8 +924,13 @@ AccessibleRelation_unref (AccessibleRelation *obj)
 AccessibleRelationType
 AccessibleRelation_getRelationType (AccessibleRelation *obj)
 {
-  cspi_return_val_if_fail (obj != NULL, -1);
-  return 0;
+  AccessibleRelationType retval;
+  
+  cspi_return_val_if_fail (obj, SPI_RELATION_NULL);
+  retval =
+    Accessibility_Relation_getRelationType (CSPI_OBJREF (obj), cspi_ev());
+  cspi_return_val_if_ev ("getRelationType", SPI_RELATION_NULL);
+  return retval;
 }
 
 /**
@@ -910,8 +948,13 @@ AccessibleRelation_getRelationType (AccessibleRelation *obj)
 int
 AccessibleRelation_getNTargets (AccessibleRelation *obj)
 {
-  cspi_return_val_if_fail (obj != NULL, -1);
-  return 0;
+  int retval;
+  
+  cspi_return_val_if_fail (obj, -1);
+  retval = (int)
+    Accessibility_Relation_getNTargets (CSPI_OBJREF (obj), cspi_ev());
+  cspi_return_val_if_ev ("getNTargets", -1);
+  return retval;
 }
 
 /**
@@ -929,8 +972,15 @@ AccessibleRelation_getNTargets (AccessibleRelation *obj)
 Accessible *
 AccessibleRelation_getTarget (AccessibleRelation *obj, int i)
 {
-  cspi_return_val_if_fail (obj != NULL, NULL);
-  return NULL;
+  Accessible *retval;
+
+  cspi_return_val_if_fail (obj, NULL);
+
+  retval = cspi_object_add (
+                        Accessibility_Relation_getTarget (CSPI_OBJREF(obj),
+                                                          (CORBA_short) i, cspi_ev()));
+  cspi_return_val_if_ev ("getTarget", NULL);
+  return retval;
 }
 
 /**