<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>ChangeLog</filename>
    </added>
    <added>
      <filename>README</filename>
    </added>
    <added>
      <filename>setup.py</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,4 @@
+__version__ = &quot;0.0.1&quot;
 from comtypes.client import GetModule
 GetModule('oleacc.dll')
 from comtypes.gen.Accessibility import IAccessible</diff>
      <filename>pyia/__init__.py</filename>
    </modified>
    <modified>
      <diff>@@ -111,6 +111,25 @@ class _IAccessibleMixin(object):
     def __len__(self):
         return self.accChildCount
 
+    def accStateName(self):
+        states = []
+        state = self.accState()
+        state_bit = 1
+        for shift in xrange(64):
+            state_bit = state_bit &lt;&lt; shift
+            if state_bit &amp; state:
+                states.append(self._getStateText(state_bit &amp; state))
+        return ' '.join(states)
+
+    def _getStateText(self, state_bit):
+        stateLen = oledll.oleacc.GetStateTextW(state_bit,0,0)
+        if stateLen:
+            buf = create_unicode_buffer(stateLen + 2)
+            oledll.oleacc.GetStateTextW(state_bit, buf, stateLen + 1)
+            return buf.value
+        else:
+            return ''
+        
     def accRoleName(self):
         role = self.accRole()
         roleLen = oledll.oleacc.GetRoleTextW(role,0,0)</diff>
      <filename>pyia/accessible.py</filename>
    </modified>
    <modified>
      <diff>@@ -74,3 +74,37 @@ NAVDIR_NEXT = 5
 NAVDIR_PREVIOUS = 6
 NAVDIR_RIGHT = 4
 NAVDIR_UP = 1
+
+STATE_SYSTEM_UNAVAILABLE = 0x1
+STATE_SYSTEM_SELECTED = 0x2
+STATE_SYSTEM_FOCUSED = 0x4
+STATE_SYSTEM_PRESSED = 0x8
+STATE_SYSTEM_CHECKED = 0x10
+STATE_SYSTEM_MIXED = 0x20
+STATE_SYSTEM_READONLY = 0x40
+STATE_SYSTEM_HOTTRACKED = 0x80
+STATE_SYSTEM_DEFAULT = 0x100
+STATE_SYSTEM_EXPANDED = 0x200
+STATE_SYSTEM_COLLAPSED = 0x400
+STATE_SYSTEM_BUSY = 0x800
+STATE_SYSTEM_FLOATING = 0x1000
+STATE_SYSTEM_MARQUEED = 0x2000
+STATE_SYSTEM_ANIMATED = 0x4000
+STATE_SYSTEM_INVISIBLE = 0x8000
+STATE_SYSTEM_OFFSCREEN = 0x10000
+STATE_SYSTEM_SIZEABLE = 0x20000
+STATE_SYSTEM_MOVEABLE = 0x40000
+STATE_SYSTEM_SELFVOICING = 0x80000
+STATE_SYSTEM_FOCUSABLE = 0x100000
+STATE_SYSTEM_SELECTABLE = 0x200000
+STATE_SYSTEM_LINKED = 0x400000
+STATE_SYSTEM_TRAVERSED = 0x800000
+STATE_SYSTEM_MULTISELECTABLE = 0x1000000
+STATE_SYSTEM_EXTSELECTABLE = 0x2000000
+STATE_SYSTEM_HASSUBMENU = 0x4000000
+STATE_SYSTEM_ALERT_LOW = 0x4000000
+STATE_SYSTEM_ALERT_MEDIUM = 0x8000000
+STATE_SYSTEM_ALERT_HIGH = 0x10000000
+STATE_SYSTEM_PROTECTED = 0x20000000
+STATE_SYSTEM_HASPOPUP = 0x40000000
+STATE_SYSTEM_VALID = 0x1fffffff</diff>
      <filename>pyia/constants.py</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>cc8585b5d5a767c9394d94af3de249e46e9ce74b</id>
    </parent>
  </parents>
  <author>
    <name>Eitan Isaacson</name>
    <email>eitan@ascender.com</email>
  </author>
  <url>http://github.com/eeejay/pyia/commit/e6a486f1484fe13e5da5629be2d4c001605da4c9</url>
  <id>e6a486f1484fe13e5da5629be2d4c001605da4c9</id>
  <committed-date>2008-06-23T16:25:32-07:00</committed-date>
  <authored-date>2008-06-23T16:25:32-07:00</authored-date>
  <message>Yo yo</message>
  <tree>195e82551f7a87c7a08c7eeaa17851bb48e4c7e0</tree>
  <committer>
    <name>Eitan Isaacson</name>
    <email>eitan@ascender.com</email>
  </committer>
</commit>
