
    %
i"%                         d dl Z d dlZd dlZd dlZi adag dZd Zd ZddZ	d Z
d dlZd dlmZ ej        Z G d	 d
ej                  ZdS )    Nd   ))Browserz"win32ui.GetApp().OnViewBrowse(0,0))zBrowse PythonPathz>from pywin.tools import browseProjects;browseProjects.Browse())zEdit Python Pathz6from pywin.tools import regedit;regedit.EditRegistry())zCOM Makepy utilityz0from win32com.client import makepy;makepy.main())zCOM BrowserzAfrom win32com.client import combrowse;combrowse.main(modal=False))zTrace Collector Debugging toolzHfrom pywin.tools import TraceCollector;TraceCollector.MakeOutputWindow()c                      g } d}	 t          j        d|z  dd          }|dk    rn6t          j        d|z  dd          }|                     ||f           |dz  }Vt          |           dk    rt          } | S )N   Tools Menu\%s Commandr   )win32uiGetProfileValappendlendefaultToolMenuItems)itemslookNomenucmds       C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\pythonwin/pywin/framework/toolmenu.pyLoadToolMenuItemsr       s    EF$%5%>BGG2::#$4v$=y"MMdC[!!!! 5zzQ$L    c                    	 t          j                    }t          j        |d          }n# t           j        $ r d }Y nw xY w|C	 	 t          j        |d          }n# t          j        $ r Y nw xY wt          j        ||           B| t          k    rd S d}| D ]<\  }}t          j        d|z  d|           t          j        d|z  d|           |dz  }=d S )Nz
Tools Menur   r   r   r   r	   )	r
   GetAppRegistryKeywin32api
RegOpenKeyerror
RegEnumKeyRegDeleteKeyr   WriteProfileVal)r   mainKeytoolKeysubkeyitemNor   r   s          r   WriteToolMenuItemsr"   1   s#   +--%g|<<=   	3!,Wa88>   !'6222	3 $$$F  	c 06 92tDDD 06 99cJJJ! s   (+ ??A A.-A.c                 P   t          j                    }t                      }|D ]\  }}|||ft          t          <   |                    t          j        t          j        z  t          |           t          j	                    
                    t          t                     t          dz  a||                                 dz
  }|dk     rd}|                     |t          j        t          j        z  t          j        z  t          j        z  |                                d           d S )Nr      r   z&Tools)r
   CreatePopupMenur   toolsidPos
AppendMenuwin32con
MF_ENABLED	MF_STRINGGetMainFrameHookCommandHandleToolCommandGetMenuItemCount
InsertMenuMF_BYPOSITIONMF_POPUP	GetHandle)r   menuPos	toolsMenur   
menuStringr   s         r   SetToolsMenur7   K   s$    '))I E   
C"C4e("44eZ	
 	
 	
 	**+<eDDD
 ''))A-Q;;GOO

	

	 
	 	    r   c                    dd l }dd l}t          |          \  }}}t          j        d|z  d           |                    dd|          }t          j        d           d }	 t          j        j	        j
        }dt          j        j	        _
        n# t          t          f$ r Y nw xY w	 t          d|z             d}n<# t          $ r d}Y n. t          d|z             |                                 d}Y nxY w||t          j        j	        _
        t          j        d           |rd}	nd	|z  }	t          j        |	d           d S )
Nr   zExecuting tool %sr   z\\n
z%s
zFailed to execute command:
%szCompleted successfully.zError executing %s.)re	tracebackr&   r
   SetStatusTextsubDoWaitCursorsysstdouttemplatewriteQueueing	NameErrorAttributeErrorexec
SystemExitprint	print_exc)
r   coder:   r;   r6   pyCmddescoldFlagworkedtexts
             r   r.   r.   n   s{   III !&c
Z-4a888FF64''EG*%3,-
))~&   	Ve^   .6777,3
) ,($t+$"""""s$    ,B B! B!%B: :C3)C3)dialogc                   D    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
S )ToolMenuPropPagec                 h    d| _         t          j                            | t          j                   d S )Nr   )bImChangingEditControlsrO   PropertyPage__init__r
   IDD_PP_TOOLMENU)selfs    r   rU   zToolMenuPropPage.__init__   s,    '($$$T7+BCCCCCr   c                 (   |                      t          j                  | _        |                      t          j                  | _        |                     | j        t          j                   |                     | j        t          j                   | 	                    | j
        t          j                   | 	                    | j        t          j                   |                     | j        t          j                   |                     | j        t          j                   |                     | j        t          j                   |                     | j        t          j                   |                      t          j                  }|                                }|d         |d         z
  }|dz  t/          j        t2          j                  z
  dz
  }t          j        |df}|                    d|           t          j        |df}|                    d|           d}t;                      D ]7\  }}|                    ||           |                    |d|           |dz  }8|| _         tB          j"        #                    |           S )Nr$   r   r   z	Menu TextzPython Command)$
GetDlgItemr
   	IDC_EDIT2editMenuCommandIDC_BUTTON3butNewr-   OnCommandEditControls	IDC_EDIT1
HookNotifyOnNotifyListControlcommctrlLVN_ITEMCHANGEDOnNotifyListControlEndLabelEditLVN_ENDLABELEDITOnButtonNewOnButtonDeleteIDC_BUTTON4OnButtonMoveIDC_BUTTON1IDC_BUTTON2	IDC_LIST1GetWindowRectr   GetSystemMetricsr)   SM_CXBORDERLVCFMT_LEFTInsertColumnr   
InsertItemSetItemTextlistControlrO   rT   OnInitDialog)	rW   lcrectcxcolSizeitemr!   rK   r   s	            r   ru   zToolMenuPropPage.OnInitDialog   s$   #w/@AAoog&9:: 	3W5FGGG3W5FGGG0(2JKKK<h>WXXX 	)7+>???,g.ABBB*G,?@@@*G,?@@@ __W.//!!!WtAwq&84X5IJJJQN#Wk9
4   #W.>>
4    *,, 	 	ID#MM&$'''NN61c***aKFF"//555r   c                 2   g }d}	 	 | j                             |d          }|snL|                    || j                             |d          f           n# t          j        $ r Y n
w xY w|dz  }kt          |           | j                                        S )Nr   r   )rt   GetItemTextr   r
   r   r"   _obj_OnOK)rW   r   itemLookrN   s       r   r~   zToolMenuPropPage.OnOK   s    		'33Ha@@ dD$4$@$@1$M$MNOOOO=    MH		 	5!!!z   s   A 0A A('A(c                     |t           j        k    ra| j        sZ| j                            dt
          j                  }| j                                        }| j        	                    |d|           dS )Nr   r   )
r)   	EN_CHANGErS   rt   GetNextItemrb   LVNI_SELECTEDr[   GetWindowTextrs   )rW   idr   r!   newTexts        r   r^   z&ToolMenuPropPage.OnCommandEditControls   sg    ($$$T-I$%11"h6LMMF*88::G((G<<<qr   c                     | j                                                                         }| j                             dt          j                  }| j                             |d|           d S )Nr   r   )rt   GetEditControlr   r   rb   r   rs   )rW   r   r   r   r!   s        r   rd   z0ToolMenuPropPage.OnNotifyListControlEndLabelEdit   s^    "1133AACC!--b(2HII$$VQ88888r   c                 .   	 | j                             dt          j                  }n# t          j        $ r Y d S w xY wd| _        	 | j                             |d          }| j        	                    |d                    d| _        n# d| _        w xY wdS )Nr   r      r   )
rt   r   rb   r   r
   r   rS   GetItemr[   SetWindowText)rW   r   r   r!   rz   s        r   ra   z$ToolMenuPropPage.OnNotifyListControl   s    	%11"h6LMMFF} 	 	 	FF	 ()$	-#++FA66D ..tAw777+,D((1D(,,,,qs   %( ;;;B	 		Bc                     |t           j        k    rQ| j                                        }| j                            |d           | j                            |d           d S d S )NzClick to edit the textr   )r)   
BN_CLICKEDrt   GetItemCountrr   EnsureVisible)rW   r   r   newIndexs       r   rf   zToolMenuPropPage.OnButtonNew   se    (%%%'4466H''2JKKK**8Q77777 &%r   c                    |t           j        k    r]	 | j                            dt          j                  }n# t          j        $ r Y d S w xY w| j                            |d          }| j                            |d          }|t          j	        k    ra|dk    rY| j        
                    |           | j                            |dz
  |           | j                            |dz
  d|           d S d S || j                                        dz
  k     r[| j        
                    |           | j                            |dz   |           | j                            |dz   d|           d S d S d S )Nr   r   r   )r)   r   rt   r   rb   r   r
   r   r|   rj   
DeleteItemrr   rs   r   )rW   r   r   r!   r   s        r   ri   zToolMenuPropPage.OnButtonMove   s   (%%%)55b(:PQQ=   #//::D"..vq99CW(((A::$//777$//
DAAA$00!QDDDDD	 : D,99;;a???$//777$//
DAAA$00!QDDDDD) &%  @?s   %9 AAc                     |t           j        k    rY	 | j                            dt          j                  }n# t          j        $ r Y d S w xY w| j                            |           d S d S )Nr   )	r)   r   rt   r   rb   r   r
   r   r   )rW   r   r   r!   s       r   rg   zToolMenuPropPage.OnButtonDelete  s{    (%%%)55b(:PQQ=   ''///// &%s   %8 A
AN)__name__
__module____qualname__rU   ru   r~   r^   rd   ra   rf   ri   rg    r   r   rQ   rQ      s        D D D%6 %6 %6N! ! !"  9 9 9
   8 8 8E E E.0 0 0 0 0r   rQ   )N)r?   r   r)   r
   r&   r'   r   r   r"   r7   r.   rb   	pywin.mfcrO   LVN_ENDLABELEDITWre   rT   rQ   r   r   r   <module>r      s    


   
   &  "  4       F!# !# !#J       - ~0 ~0 ~0 ~0 ~0v* ~0 ~0 ~0 ~0 ~0r   