
    g
f1                         d Z dZdZdZdZddlZ ej                  dd       dd	lmZ dd
l	m
Z
 ddl	mZ ddlmZ ddlmZ ddlmZ ddlmZ  G d dej&                        Zy)z$Id$z
$Revision$z$Date$znCopyright (c) 2005-2009 Sun Microsystems Inc.Copyright (c) 2010 Orca Team.Copyright (c) 2014-2015 Igalia, S.L.LGPL    NAtspiz2.0)r   )debug)focus_manager)AXObject)default)web   	Utilitiesc                   2    e Zd Z fdZd Z fdZ fdZ fdZ fdZ fdZ	 fdZ
 fd	Z fd
Z fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ fdZ xZ S )Scriptc                 2    t         |   |       d| _        y )NF)super__init__presentIfInactive)selfapp	__class__s     D/usr/lib/python3/dist-packages/orca/scripts/toolkits/Gecko/script.pyr   zScript.__init__,   s    !&    c                     t        |       S )z&Returns the utilities for this script.r   )r   s    r   getUtilitieszScript.getUtilities1   s     r   c                     t         |   |||      ryd}t        j                  t        j                  |d       t
        j                  j                  | |||       y)z3Handles changes of focus of interest to the script.N,GECKO: Passing along event to default scriptT)r   locusOfFocusChangedr   printMessage
LEVEL_INFOr   r   )r   eventoldFocusnewFocusmsgr   s        r   r   zScript.locusOfFocusChanged6   sN     7&uhA<5++S$7**4(Kr   c                    t         |   |      ry|j                  rht        j                  |j
                        t        j                  j                  k(  r.t        j                         j                  |j
                        syd}t        j                  t        j                  |d       t        j                   j                  | |       y)z>Callback for object:state-changed:active accessibility events.Nr   T)r   onActiveChangeddetail1r   get_rolesourcer   RoleFRAMEr   
getManagercan_be_active_windowr   r   r   r   r   r   r   r"   r   s      r   r$   zScript.onActiveChanged@   s     7"5)==X..u||<

@P@PP ++-BB5<<P<5++S$7&&tU3r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)zCCallback for object:active-descendant-changed accessibility events.Nr   T)r   onActiveDescendantChangedr   r   r   r   r   r,   s      r   r.   z Script.onActiveDescendantChangedN   sF     7,U3<5++S$700u=r   c                 N   | j                   j                  |j                        r(d}t        j                  t        j
                  |d       yt        |   |      ryd}t        j                  t        j
                  |d       t        j                  j                  | |       y)z<Callback for object:state-changed:busy accessibility events.2GECKO: Ignoring: Event source is not real documentTNr   )
	utilitiesisNotRealDocumentr'   r   r   r   r   onBusyChangedr   r   r,   s      r   r3   zScript.onBusyChangedX   s|     >>++ELL9FCu//d;7 '<5++S$7$$T51r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z:Callback for object:text-caret-moved accessibility events.Nr   T)r   onCaretMovedr   r   r   r   r   r,   s      r   r5   zScript.onCaretMovedg   sF     7&<5++S$7##D%0r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z?Callback for object:state-changed:checked accessibility events.Nr   T)r   onCheckedChangedr   r   r   r   r   r,   s      r   r7   zScript.onCheckedChangedq   F     7#E*<5++S$7''e4r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z:Callback for object:column-reordered accessibility events.Nr   T)r   onColumnReorderedr   r   r   r   r   r,   s      r   r:   zScript.onColumnReordered{   F     7$U+<5++S$7((u5r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z>Callback for object:children-changed:add accessibility events.Nr   T)r   onChildrenAddedr   r   r   r   r   r,   s      r   r=   zScript.onChildrenAdded   sF     7"5)<5++S$7&&tU3r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)zBCallback for object:children-changed:removed accessibility events.Nr   T)r   onChildrenRemovedr   r   r   r   r   r,   s      r   r?   zScript.onChildrenRemoved   r;   r   c                 N   | j                   j                  |j                        r(d}t        j                  t        j
                  |d       yt        |   |      ryd}t        j                  t        j
                  |d       t        j                  j                  | |       y)z9Callback for document:load-complete accessibility events.r0   TNr   )
r1   r2   r'   r   r   r   r   onDocumentLoadCompleter   r   r,   s      r   rA   zScript.onDocumentLoadComplete   s|     >>++ELL9FCu//d;7)%0<5++S$7--dE:r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z8Callback for document:load-stopped accessibility events.Nr   T)r   onDocumentLoadStoppedr   r   r   r   r   r,   s      r   rC   zScript.onDocumentLoadStopped   sF     7(/<5++S$7,,T59r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z2Callback for document:reload accessibility events.Nr   T)r   onDocumentReloadr   r   r   r   r   r,   s      r   rE   zScript.onDocumentReload   r8   r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z@Callback for object:state-changed:expanded accessibility events.Nr   T)r   onExpandedChangedr   r   r   r   r   r,   s      r   rG   zScript.onExpandedChanged   r;   r   c                 |   t         |   |      ry| j                  j                  |j                        ry|j                  t        j                         j                         k(  r(d}t        j                  t        j                  |d       yt        j                         j                  ||j                         y)z)Callback for focus: accessibility events.Nz(GECKO: Ignoring event for active window.T)r   onFocusr1   isLayoutOnlyr'   r   r*   get_active_windowr   r   r   set_locus_of_focusr,   s      r   rI   zScript.onFocus   s     7?5!>>&&u||4<<=335GGII<Cu//d; 	  "55eU\\Jr   c                    t         |   |      ryt        j                  |j                        t
        j                  j                  k(  rJt        j                         j                         r(d}t        j                  t        j                  |d       yd}t        j                  t        j                  |d       t        j                  j                  | |       y)z?Callback for object:state-changed:focused accessibility events.Nz+GECKO: Ignoring event believed to be noise.Tr   )r   onFocusedChangedr   r&   r'   r   r(   PANELr   r*   focus_is_active_windowr   r   r   r   r   r,   s      r   rN   zScript.onFocusedChanged   s     7#E*U\\*ejj.>.>>'')@@BC""5#3#3S$?<5++S$7''e4r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z/Callback for mouse:button accessibility events.Nr   T)r   onMouseButtonr   r   r   r   r   r,   s      r   rR   zScript.onMouseButton   F     7 '<5++S$7$$T51r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z;Callback for object:property-change:accessible-name events.Nr   T)r   onNameChangedr   r   r   r   r   r,   s      r   rU   zScript.onNameChanged   rS   r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z7Callback for object:row-reordered accessibility events.Nr   T)r   onRowReorderedr   r   r   r   r   r,   s      r   rW   zScript.onRowReordered  F     7!%(<5++S$7%%dE2r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z@Callback for object:state-changed:selected accessibility events.Nr   T)r   onSelectedChangedr   r   r   r   r   r,   s      r   rZ   zScript.onSelectedChanged  r;   r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z;Callback for object:selection-changed accessibility events.Nr   T)r   onSelectionChangedr   r   r   r   r   r,   s      r   r\   zScript.onSelectionChanged  sF     7%e,<5++S$7))$6r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z?Callback for object:state-changed:showing accessibility events.Nr   T)r   onShowingChangedr   r   r   r   r   r,   s      r   r^   zScript.onShowingChanged  r8   r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)zACallback for object:text-attributes-changed accessibility events.Nr   T)r   onTextAttributesChangedr   r   r   r   r   r,   s      r   r`   zScript.onTextAttributesChanged)  sF     7*51<5++S$7..tU;r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z=Callback for object:text-changed:delete accessibility events.Nr   T)r   onTextDeletedr   r   r   r   r   r,   s      r   rb   zScript.onTextDeleted3  rS   r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z=Callback for object:text-changed:insert accessibility events.Nr   T)r   onTextInsertedr   r   r   r   r   r,   s      r   rd   zScript.onTextInserted=  rX   r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z@Callback for object:text-selection-changed accessibility events.Nr   T)r   onTextSelectionChangedr   r   r   r   r   r,   s      r   rf   zScript.onTextSelectionChangedG  sF     7)%0<5++S$7--dE:r   c                    t        j                         j                  |j                        syt        |   |      ryd}t        j                  t        j                  |d       t        j                  j                  | |       y)z2Callback for window:activate accessibility events.Nr   T)r   r*   r+   r'   r   onWindowActivatedr   r   r   r   r   r,   s      r   rh   zScript.onWindowActivatedQ  sd     '')>>u||L7$U+<5++S$7((u5r   c                     t         |   |      ryd}t        j                  t        j                  |d       t
        j                  j                  | |       y)z4Callback for window:deactivate accessibility events.Nr   T)r   onWindowDeactivatedr   r   r   r   r   r,   s      r   rj   zScript.onWindowDeactivated^  sF     7&u-<5++S$7**47r   )!__name__
__module____qualname__r   r   r   r$   r.   r3   r5   r7   r:   r=   r?   rA   rC   rE   rG   rI   rN   rR   rU   rW   rZ   r\   r^   r`   rb   rd   rf   rh   rj   __classcell__)r   s   @r   r   r   *   s    '

L4>215646;:56K.5 223675<23;68 8r   r   )__id____version____date____copyright____license__girequire_versiongi.repositoryr   orcar   r   orca.ax_objectr   orca.scriptsr   r	   script_utilitiesr   r    r   r   <module>r|      s`   , 7  	   7E "    #    '|8SZZ |8r   