From c5c8f5981cd8bad6d46a224ecb9c739e2e054f99 Mon Sep 17 00:00:00 2001 From: Daniel Narvaez Date: Thu, 22 Nov 2012 23:49:45 +0000 Subject: Reorder to put public methods at the top --- diff --git a/tests/tree.py b/tests/tree.py index f414c67..c4370f7 100644 --- a/tests/tree.py +++ b/tests/tree.py @@ -35,6 +35,30 @@ class Node: def __init__(self, accessible): self._accessible = accessible + def dump(self): + self._crawl_accessible(self, 0) + + def do_action(self, name): + for i in range(self._accessible.get_n_actions()): + if Atspi.Action.get_name(self._accessible, i) == name: + self._accessible.do_action(i) + + def click(self, button=1): + point = self._accessible.get_position(Atspi.CoordType.SCREEN) + Atspi.generate_mouse_event(point.x, point.y, "b%sc" % button) + + @property + def name(self): + return self._accessible.get_name() + + @property + def role_name(self): + return self._accessible.get_role_name() + + @property + def text(self): + return Atspi.Text.get_text(self._accessible, 0, -1) + def get_children(self): children = [] @@ -47,6 +71,32 @@ class Node: return children + @_retry_find + def find_children(self, name=None, role_name=None): + def predicate(node): + return self._predicate(node, name, role_name) + + descendants = [] + self._find_all_descendants(self, predicate, descendants) + if not descendants: + return [] + + return descendants + + def __str__(self): + return "[%s | %s]" % (self.name, self.role_name) + + @_retry_find + def find_child(self, name=None, role_name=None, expect_none=False): + def predicate(node): + return self._predicate(node, name, role_name) + + node = self._find_descendant(self, predicate) + if node is None: + return None + + return node + def _predicate(self, node, name, role_name): if name is not None and name != node.name: return False @@ -67,17 +117,6 @@ class Node: return None - @_retry_find - def find_child(self, name=None, role_name=None, expect_none=False): - def predicate(node): - return self._predicate(node, name, role_name) - - node = self._find_descendant(self, predicate) - if node is None: - return None - - return node - def _find_all_descendants(self, node, predicate, matches): if predicate(node): matches.append(node) @@ -85,47 +124,8 @@ class Node: for child in node.get_children(): self._find_all_descendants(child, predicate, matches) - @_retry_find - def find_children(self, name=None, role_name=None): - def predicate(node): - return self._predicate(node, name, role_name) - - descendants = [] - self._find_all_descendants(self, predicate, descendants) - if not descendants: - return [] - - return descendants - - def __str__(self): - return "[%s | %s]" % (self.name, self.role_name) - def _crawl_accessible(self, node, depth): print " " * depth + str(node) for child in node.get_children(): self._crawl_accessible(child, depth + 1) - - def dump(self): - self._crawl_accessible(self, 0) - - def do_action(self, name): - for i in range(self._accessible.get_n_actions()): - if Atspi.Action.get_name(self._accessible, i) == name: - self._accessible.do_action(i) - - def click(self, button=1): - point = self._accessible.get_position(Atspi.CoordType.SCREEN) - Atspi.generate_mouse_event(point.x, point.y, "b%sc" % button) - - @property - def name(self): - return self._accessible.get_name() - - @property - def role_name(self): - return self._accessible.get_role_name() - - @property - def text(self): - return Atspi.Text.get_text(self._accessible, 0, -1) -- cgit v0.9.1