
    %
iA                         d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ  ej                    Z	d Z
d Zd Zd Zd Zedk    r e             dS dS )	    N)DispatchWithEventsc                      G d d          }  G d d          }t          d|           }i |_        d|_        |j                                        }t          ||          }t          d|           t          d           t          d	           t          |d
          s|                                 t          |ddg          st          j
        d           d S d S )Nc                   ,    e Zd Zd Zd Zd Zd Zd ZdS )TestExcel.<locals>.ExcelEventsc                 l    t          |t          j                  st          d          d | j        d<   d S )N>The transformer doesn't appear to have translated this for us!OnNewWorkbook
isinstancetypesInstanceTypeRuntimeErrorseen_events)selfwbs     C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\win32com/test/testMSOfficeEvents.pyr	   z,TestExcel.<locals>.ExcelEvents.OnNewWorkbook   sA    b%"455 "T   15D_---    c                     t          |t          j                  rt          |t          j                  st          d          d | j        d<   d S )Nr   OnWindowActivater
   r   r   wns      r   r   z/TestExcel.<locals>.ExcelEvents.OnWindowActivate   s]    b%"455 ZE&> >  #T   48D/000r   c                     d | j         d<   d S )NOnWindowDeactivater   r   s      r   r   z1TestExcel.<locals>.ExcelEvents.OnWindowDeactivate    s    59D1222r   c                     d | j         d<   d S )NOnSheetDeactivater   )r   shs     r   r   z0TestExcel.<locals>.ExcelEvents.OnSheetDeactivate#   s    48D0111r   c                 b    |j         dz  dk    rt          d           d S t          d           dS )N   r   zYou can double-click there...z!You can not double-click there...   )Columnprint)r   ShTargetCancels       r   OnSheetBeforeDoubleClickz7TestExcel.<locals>.ExcelEvents.OnSheetBeforeDoubleClick&   s?    }q A%%5666669::: qr   N)__name__
__module____qualname__r	   r   r   r   r&    r   r   ExcelEventsr      s_        	5 	5 	5	8 	8 	8	: 	: 	:	9 	9 	9	 	 	 	 	r   r+   c                       e Zd Zd Zd ZdS )!TestExcel.<locals>.WorkbookEventsc                 $    t          d           d S )Nzworkbook OnActivater"   r   s    r   
OnActivatez,TestExcel.<locals>.WorkbookEvents.OnActivate0   s    '(((((r   c                 $    t          d           d S )NzIt's a Worksheet Eventr/   )r   r$   r%   s      r   OnBeforeRightClickz4TestExcel.<locals>.WorkbookEvents.OnBeforeRightClick3   s    *+++++r   N)r'   r(   r)   r1   r3   r*   r   r   WorkbookEventsr-   /   s2        	) 	) 	)	, 	, 	, 	, 	,r   r4   zExcel.Applicationr    z	Have bookz+Double-click in a few of the Excel cells...z=Press any key when finished with Excel, or wait 10 seconds...
   r	   r   )r   r   Visible	WorkbooksAddr"   _WaitForFinishQuit_CheckSeenEventssysexit)r+   r4   ebooks       r   	TestExcelr@      s          @, , , , , , , , 	.<<AAMAI;??DdN33D	+t 

7888	
IJJJ!R   	A1CDEE  r   c                  D    G d d          } t          d|           }i |_        d|_        |j                                         t          d           t          |d          s|                                 t          |ddg          st          j
        d           d S d S )	Nc                        e Zd Zd Zd Zd ZdS )TestWord.<locals>.WordEventsc                     d | j         d<   d S )NOnDocumentChanger   r0   s    r   rE   z-TestWord.<locals>.WordEvents.OnDocumentChangeI       37D/000r   c                     d | j         d<   d S )Nr   r   )r   docr   s      r   r   z-TestWord.<locals>.WordEvents.OnWindowActivateL   rF   r   c                 L    d | j         d<   t                                           d S )NOnQuit)r   	stopEventsetr0   s    r   rJ   z#TestWord.<locals>.WordEvents.OnQuitO   s     )-DX&MMOOOOOr   N)r'   r(   r)   rE   r   rJ   r*   r   r   
WordEventsrC   H   sA        	8 	8 	8	8 	8 	8	 	 	 	 	r   rM   zWord.Applicationr    z<Press any key when finished with Word, or wait 10 seconds...r5   rE   r   )r   r   r6   	Documentsr8   r"   r9   r:   r;   r<   r=   )rM   ws     r   TestWordrP   G   s    	 	 	 	 	 	 	 	 	-z::AAMAIKOO	
HIII!R   	A 24FGHH  r   c                    t          j                     |z   }	 t          j                    rt          j                     nt	          j                     t                              d           t                                          rt          	                                 n:	 | j
        sdS n# t          j        $ r Y nw xY wt          j                     |k    rdS dS )Nr    g?r   )timemsvcrtkbhitgetch	pythoncomPumpWaitingMessagesrK   waitis_setclearr6   	com_error)obtimeoutends      r   r9   r9   ^   s    
)++
C<>> 	LNNN%'''s 	OO	:  q " 	 	 	D	 9;;1%& 1s    B* *B<;B<c                 J    d}|D ]}|| j         vrt          d|           d}|S )Nr    z%ERROR: Expected event did not triggerr   )r   r"   )oeventsrcr>   s       r   r;   r;   v   s?    	
B  AM!!91===BIr   c                      dd l } d| j        dd          vrt                       d| j        dd          vrt                       t	          d           d S )Nr   nowordr    noexcelz"Word and Excel event tests passed.)r<   argvrP   r@   r"   )r<   s    r   testrg      s\    JJJsx|##


$$	
./////r   __main__)rS   r<   	threadingrR   r   rV   win32com.clientr   EventrK   r@   rP   r9   r;   rg   r'   r*   r   r   <module>rl      s     



           . . . . . .IO	6 6 6r  .  0  0 0 0 zDFFFFF r   