introduce new HIGHLIGHTABLE and HIGHLIGHTED states.
[platform/upstream/at-spi2-core.git] / atspi / atspi-collection.c
index a40a453..f4e33ef 100644 (file)
@@ -49,6 +49,8 @@ new_message (AtspiCollection *collection, char *method)
     return NULL;
 
   accessible = ATSPI_ACCESSIBLE (collection);
+  if (!accessible->parent.app)
+    return NULL;
   return dbus_message_new_method_call (accessible->parent.app->bus_name,
                                        accessible->parent.path,
                                        atspi_interface_collection,
@@ -89,11 +91,8 @@ return_accessibles (DBusMessage *message)
   while (dbus_message_iter_get_arg_type (&iter_array) != DBUS_TYPE_INVALID)
   {
     AtspiAccessible *accessible;
-    GArray *new_array;
     accessible = _atspi_dbus_return_accessible_from_iter (&iter_array);
-    new_array = g_array_append_val (ret, accessible);
-    if (new_array)
-      ret = new_array;
+    ret = g_array_append_val (ret, accessible);
     /* Iter was moved already, so no need to call dbus_message_iter_next */
   }
   dbus_message_unref (message);
@@ -102,17 +101,12 @@ return_accessibles (DBusMessage *message)
 
 /**
  * atspi_collection_get_matches:
- *
  * @collection: A pointer to the #AtspiCollection to query.
- *
  * @rule: An #AtspiMatchRule describing the match criteria.
- *
  * @sortby: An #AtspiCollectionSortOrder specifying the way the results are to
  *          be sorted.
- *
  * @count: The maximum number of results to return, or 0 for no limit.
- *
- * @traverse: TODO
+ * @traverse: Not supported.
  *
  * Gets all #AtspiAccessible objects from the @collection matching a given
  * @rule.  
@@ -151,24 +145,19 @@ atspi_collection_get_matches (AtspiCollection *collection,
 
 /**
  * atspi_collection_get_matches_to:
- *
  * @collection: A pointer to the #AtspiCollection to query.
- *
  * @current_object: The object at which to start searching.
- *
  * @rule: An #AtspiMatchRule describing the match criteria.
- *
  * @sortby: An #AtspiCollectionSortOrder specifying the way the results are to
  *          be sorted.
- *
  * @tree: An #AtspiCollectionTreeTraversalType specifying restrictions on
- *        the objects to be traversed.
- *
- * @recurse: TODO
- *
+ *          the objects to be traversed.
+ * @limit_scope: If #TRUE, only descendants of @current_object's parent
+ *          will be returned. Otherwise (if #FALSE), any accessible may be
+ *          returned if it would preceed @current_object in a flattened
+ *          hierarchy.
  * @count: The maximum number of results to return, or 0 for no limit.
- *
- * @traverse: TODO
+ * @traverse: Not supported.
  *
  * Gets all #AtspiAccessible objects from the @collection, after 
  * @current_object, matching a given @rule.  
@@ -183,7 +172,7 @@ atspi_collection_get_matches_to (AtspiCollection *collection,
                               AtspiMatchRule *rule,
                               AtspiCollectionSortOrder sortby,
                               AtspiCollectionTreeTraversalType tree,
-                              gboolean recurse,
+                              gboolean limit_scope,
                               gint count,
                               gboolean traverse,
                               GError **error)
@@ -192,7 +181,7 @@ atspi_collection_get_matches_to (AtspiCollection *collection,
   DBusMessage *reply;
   dbus_int32_t d_sortby = sortby;
   dbus_int32_t d_tree = tree;
-  dbus_bool_t d_recurse = recurse;
+  dbus_bool_t d_limit_scope = limit_scope;
   dbus_int32_t d_count = count;
   dbus_bool_t d_traverse = traverse;
 
@@ -205,7 +194,7 @@ atspi_collection_get_matches_to (AtspiCollection *collection,
     return NULL;
   dbus_message_append_args (message, DBUS_TYPE_UINT32, &d_sortby,
                                      DBUS_TYPE_UINT32, &d_tree,
-                            DBUS_TYPE_BOOLEAN, &d_recurse,
+                            DBUS_TYPE_BOOLEAN, &d_limit_scope,
                             DBUS_TYPE_INT32, &d_count,
                             DBUS_TYPE_BOOLEAN, &d_traverse,
                             DBUS_TYPE_INVALID);
@@ -217,22 +206,15 @@ atspi_collection_get_matches_to (AtspiCollection *collection,
 
 /**
  * atspi_collection_get_matches_from:
- *
  * @collection: A pointer to the #AtspiCollection to query.
- *
  * @current_object: Upon reaching this object, searching should stop.
- *
  * @rule: An #AtspiMatchRule describing the match criteria.
- *
  * @sortby: An #AtspiCollectionSortOrder specifying the way the results are to
  *          be sorted.
- *
  * @tree: An #AtspiCollectionTreeTraversalType specifying restrictions on
- *        the objects to be traversed.
- *
+ *          the objects to be traversed.
  * @count: The maximum number of results to return, or 0 for no limit.
- *
- * @traverse: TODO
+ * @traverse: Not supported.
  *
  * Gets all #AtspiAccessible objects from the @collection, before  
  * @current_object, matching a given @rule.  
@@ -279,6 +261,7 @@ atspi_collection_get_matches_from (AtspiCollection *collection,
 /**
  * atspi_collection_get_active_descendant:
  *
+* Returns: (transfer full): The active descendant of the given object.
  * Not yet implemented.
  **/
 AtspiAccessible *