Module IAccessibleHandler :: Class OrderedWinEventLimiter
[hide private]
[frames] | no frames]

Class OrderedWinEventLimiter

source code

object --+
         |
        OrderedWinEventLimiter

Collects and limits winEvents based on whether they are focus changes, or just generic (all other ones).

Only allow a max of maxFocusItems, if more are added then the oldest focus event is removed to make room. Only allow one event for one specific object at a time, though push it further forward in time if a duplicate tries to get added. This is true for both generic and focus events.

Instance Methods [hide private]
 
__init__(self, maxFocusItems=3)
x.__init__(...) initializes x; see help(type(x)) for signature
source code
 
addEvent(self, eventID, window, objectID, childID, threadID)
Adds a winEvent to the limiter.
source code
 
flushEvents(self)
Returns a list of winEvents (tuples of eventID,window,objectID,childID) that have been added, though due to limiting, it will not necessarily be all the winEvents that were originally added.
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, maxFocusItems=3)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Parameters:
  • maxFocusItems (integer) - the amount of focus changed events allowed to be queued.
Overrides: object.__init__

addEvent(self, eventID, window, objectID, childID, threadID)

source code 

Adds a winEvent to the limiter.

Parameters:
  • eventID (integer) - the winEvent type
  • window (integer) - the window handle of the winEvent
  • objectID (integer) - the objectID of the winEvent
  • childID (integer) - the childID of the winEvent
  • threadID (integer) - the threadID of the winEvent

flushEvents(self)

source code 

Returns a list of winEvents (tuples of eventID,window,objectID,childID) that have been added, though due to limiting, it will not necessarily be all the winEvents that were originally added. They are definitely garenteed to be in the correct order though.