
    %
i:C                        d dl Z d dlZd dlZd dlZd dlmZmZ d dlmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9 d dl:m;Z;m<Z<m=Z= e j>        ?                    ej@        d                    d          ZA G d d          ZBd ZCeDdk    r eC             dS dS )	    N)GetSystemDirectoryGetSystemMetrics)2LOWORDNIF_ICONNIF_MESSAGENIF_TIPNIM_ADD
NIM_DELETEWNDCLASSCheckMenuItemCheckMenuRadioItemCreateCompatibleBitmapCreateCompatibleDCCreateFontIndirectCreatePopupMenuCreateWindowDeleteDCDestroyIconDestroyWindow
DrawIconEx
ExtTextOutFillRectGetCursorPosGetDCGetMenuDefaultItemGetMenuStateGetModuleHandleGetSysColorGetSysColorBrushGetTextExtentPoint32
InsertMenuInsertMenuItemLoadIcon	LoadImagePostMessagePostQuitMessagePumpMessagesPyGetMemoryPyMakeBufferPySetMemoryRegisterClass	ReleaseDCSelectObject
SetBkColor	SetBkModeSetForegroundWindowSetMenuDefaultItemSetTextColorShell_NotifyIconSystemParametersInfoTrackPopupMenuUpdateWindow)EmptyMENUITEMINFOPackMENUITEMINFOUnpackMENUITEMINFOc                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	
MainWindowc                 Z   t           j        | j        t           j        | j        t           j        dz   | j        t           j        | j        t           j	        | j
        i}t                      }t          d           x}|_        d|_        ||_        t!          |          }t           j        t           j        z  }t'          |d|ddt           j        t           j        dd|d           | _        t-          | j                   t.          j                            t.          j                            t6          j        d                    }t.          j                            |          sjt.          j                            t.          j                            t.          j                            t6          j                  d         d                    }t.          j                            |          r8t           j         t           j!        z  }tE          ||t           j#        dd|          }n+d }tI          d           tK          dt           j&                  }|| _'        tQ          t           j)                  }	tU          |	d                   | _+        tY          t           j-                  d	z
  | _.        | j.        | _/        d
| _0        i | _1        | 2                                 tf          th          z  tj          z  }
| j        d|
t           j        dz   |df}tm          tn          |           tI          d           d S )N   PythonTaskbarDemozTaskbar Demor   zpyc.icoz..\PC\pyc.icoz-Can't find a Python icon file - using default
lfMenuFont      zPython Demoz4Please right-click on the Python icon in the taskbar)8win32con
WM_DESTROY	OnDestroy
WM_COMMAND	OnCommandWM_USEROnTaskbarNotifyWM_MEASUREITEMOnMeasureItemWM_DRAWITEM
OnDrawItemr   r   	hInstancelpszClassNamelpfnWndProcr+   WS_OVERLAPPED
WS_SYSMENUr   CW_USEDEFAULThwndr6   ospathabspathjoinsysprefixisfilesplit
executableLR_LOADFROMFILELR_DEFAULTSIZEr$   
IMAGE_ICONprintr#   IDI_APPLICATIONiconPathNamer4   SPI_GETNONCLIENTMETRICSr   	font_menur   	SM_CYMENUmenu_icon_heightmenu_icon_width
icon_x_padmenu_item_map
createMenur   r   r   r3   r	   )selfmessage_mapwchinst	classAtomstylerb   
icon_flagshiconncmflagsnids               C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\win32/Demos/win32gui_menu.py__init__zMainWindow.__init__P   s   r!4#7#T%7 $/
 ZZ.t444.$!"%%	&)<< ""
 
	 	TYwrw||CJ	'J'JKKw~~l++ 	7??RW]]3>::1=?PQQ L 7>>,'' 	:!1H4KKJ|X%8!Q
 EE  LABBBQ 899E( #8#CDD+C,=>> !11C D Dq H#4   	;&0y!UH$4r$95-P#&&&DEEEEE    c                    t                      x| _        }t          dt          j        d          \  }}t          |dd|           t          dd          \  }}t          |dd|           t          j        t          j        z  }t          dt          j
                            t          d	          t          j        d
d
|          }t          d|d          \  }}t          |dd|           t          t          j                  }t          t          j                  }| j        r.t          d| j        t          j        ||t          j                  }nht          j
                            t'                      d          }	t(                              |	dd          \  }
}|d         }t-          |
d                    d}|df| j        |<   t          t          j        |d          \  }}t          |dd|           d}|d f| j        |<   t          d|t          j        d          \  }}t          |dd|           t5          d          }t7          d          }t9          |||          }t;          ||          }t=          |t          j                   tA          t          j!                  }tE          |d|           tG          |dd|||ddt          j$        	  	         t;          ||           tK          |           t          d|&                                d          \  }}t          |dd|           t                      x| _'        }t          t          j(        d|d          \  }}t          |dd|           tS          |dt          j*        t          j+        d            t          t          j,        t          j(        d|d          \  }}t          |dd|           t          t          j,        t          j-        d|d          \  }}t          |dd|           t          d |!          \  }}t          |dd|           t]          |dd           d S )"NExit  )texthbmpItemwIDr      zText only itemi  )r|   r~   zimages/smiley.bmpr=   zMenu with bitmapi  zshell32.dllr@   zMenu with owner-draw iconi  )fType
dwItemDatar~   zMenu with o-d icon 2i  )r|   r   r}   r~   )r   r      r   zMenu with iconi  zCheckbox menu  )fStater|   r}   r~   zCheckbox menu - bullet 1  )r   r   r|   r}   r~   zCheckbox menu - bullet 2  zSub-Menu)r|   hSubMenu)/r   hmenur8   rB   HBMMENU_MBAR_CLOSEr"   r]   LR_LOADTRANSPARENTr$   rT   rU   rW   this_dirIMAGE_BITMAPr   SM_CXSMICONSM_CYSMICONrb   r_   r   win32guiExtractIconExr   ri   MFT_OWNERDRAWHBMMENU_CALLBACKr   r   r   r-   r/   TRANSPARENTr   
COLOR_MENUr   r   	DI_NORMALr   Detachsub_menuMFS_CHECKEDr!   MF_BYPOSITIONMF_SEPARATORMFT_RADIOCHECKMFS_UNCHECKEDr1   )rk   menuitemextrasload_bmp_flagshbmpico_xico_yrr   	shell_dlllargesmallindex	hdcBitmap	hdcScreenhbmhbmOldbrushr   s                      rv   rj   zMainWindow.createMenu   sk   +---
T'("=4
 
 
f 	tQ4((( (-=4HHHftQ4(((!1H4OOGLL#677!
 
 (#d
 
 
f 	tQ4((( !!566 !566 	"!#( EE %7%9%9=III#11)QBBLE5!HEa!!! %*,G$H5!'(U
 
 
f 	tQ4(((
 %*DM5!''.	
 
 
f 	tQ4((( 'q))	!HH	$Yu==i--)X1222 !455NE222
 	9aE5%Ax?QRRRY''''!CJJLLd
 
 
f 	tQ4((( $3#4#44''oRV
 
 
f 	xAt,,,8Q 68MtTTT')'+
 
 
f 	xAt,,,'))+
 
 
f 	xAt,,,'Z(KKKftQ4((( 	4q)))))rx   c                 `    | j         df}t          t          |           t          d           d S )Nr   )rS   r3   r
   r&   )rk   rS   msgwparamlparamru   s         rv   rD   zMainWindow.OnDestroy  s1    y!nS)))rx   c           	         |t           j        k    rt          d           t                      }t	          | j                   t          | j        t           j        |d         |d         d| j        d            t          | j        t           j
        dd           nl|t           j        k    r\t          d           t          | j        dd          }|dk    rt          d           |                     |t           j        |d           dS )NzYou right clicked me.r   r   zYou double-clicked meFzCan't find a default!)rB   WM_RBUTTONUPr`   r   r0   rS   r5   r   TPM_LEFTALIGNr%   WM_NULLWM_LBUTTONDBLCLKr   rF   rE   )rk   rS   r   r   r   poscmds          rv   rH   zMainWindow.OnTaskbarNotify  s    X***)***..C	***
H2CFCFAtyRV   	8#3Q::::x000)***$TZ::Cbyy-...NN4!4c1===qrx   c           	         t          |          }|dk    r%t          d           t          | j                   d S |dv ryt	          | j        |t          j                  }|dk    rt          d          |t          j	        z  rt          j
        }t          d           nt          j	        }t          d           |dk    r$t          | j        |t          j        |z            }n"t          | j        d	d
|t          j                  }t	          | j        |t          j                  }	|	t          j	        z  |k    rt          d          t                      \  }
}t                              | j        |d|
           t!          |
          \	  }}}}}}}}}|t          j	        z  |k    rt          d          d S t          d|           d S )Nr{   Goodbye)r   r   r   r   zNo item foundzMenu was checked - uncheckingzMenu was unchecked - checkingr   r   r   z.The new item didn't get the new checked state!FzOnCommand for ID)r   r`   r   rS   r   r   rB   MF_BYCOMMANDRuntimeError
MF_CHECKEDMF_UNCHECKEDr   r   r7   r   GetMenuItemInfor9   )rk   rS   r   r   r   idstatecheck_flagsrc	new_statebufr   r   r   r~   r   hbmpCheckedhbmpUncheckedr   r|   r}   s                        rv   rF   zMainWindow.OnCommand3  s   F^^::)$)$$$$$%%% H4IJJE{{"?333x** 7&356666&15666Tzz"M2x'<{'J  (M4r83H  %T]B8MNNI8..+=="#STTT+--KC$$T]BsCCC #3''
 ++{::"#STTT ;: $b)))))rx   c           	      \   d}t          t          j        |          |          }t          j        ||          }|\  }}	}
}}}| j        |         \  }}|| j        }| j        }nt          |          }t          || j	                  }t          ||          \  }}t          ||           t          ||           |t          t          j                  z  }|| j        | j        z   z  }t          t          j                  }t          j        |||	|
|||          }t%          ||           dS )N5iPT)r)   structcalcsizeunpackri   rg   rf   r   r-   rd   r    r,   r   rB   SM_CXMENUCHECKrh   re   packr*   )rk   rS   r   r   r   fmtr   datactlTypectlIDitemID	itemWidth
itemHeightitemDatarr   r|   cxcydcoldFontnew_datas                        rv   rJ   zMainWindow.OnMeasureItemi  s&   6?3//88}S#&&BF?	:x(2t<%B&BB tB"2t~66G)"d33FBW%%%dB"8#:;;;B$&88B!("455B;sGUFBHMMFH%%%trx   c                 n   d}t          j        |t          |t          j        |                              }|\  }}}	}
}}}}}}}}||||f}| j        |         \  }}|)t          ||||||z
  ||z
  ddt          j        	  	         d S |t          j        z  }|rNt          |t          t          j                            }t          |t          t          j                            }| j        dz  }|t          t          j                  z   |z   }|| j        z   |z   }t%          || j                  }t)          |||dz   t          j        ||           t%          ||           t          |||dz   || j        | j        ddt          j        	  	         |r"t          ||           t          ||           d S d S )N5i2P4iPr      )r   r   r(   r   ri   r   rB   r   ODS_SELECTEDr2   r   COLOR_HIGHLIGHTTEXTr.   COLOR_HIGHLIGHTrh   r   r   rg   r-   rd   r   
ETO_OPAQUErf   )rk   rS   r   r   r   r   r   r   r   r   
itemAction	itemStatehwndItemhDClefttoprightbotr   rectrr   r|   selectedcrTextcrBkgndeach_padx_iconx_texthfontOlds                                rv   rL   zMainWindow.OnDrawItem  s   }S+ffoc6J6J"K"KLL 	
 S%$(2t< T3ut|S3Y1hFX     !8#88H Q%c;x7S+T+TUU$S+h6N*O*OPP!+H,X-DEEEPFd22X=F
 $C88HsFC!GX-@$MMMh''' a$%"
 
 
  )S&)))3((((() )rx   N)
__name__
__module____qualname__rw   rj   rD   rH   rF   rJ   rL    rx   rv   r;   r;   O   s        DF DF DFLB* B* B*H  
  (2* 2* 2*l  :A) A) A) A) A)rx   r;   c                  >    t                      } t                       d S )N)r;   r'   )ws    rv   mainr     s    ANNNNNrx   __main__)ErT   r   rX   rB   win32apir   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   win32gui_structr7   r8   r9   rU   r[   argvr   r;   r   r   r   rx   rv   <module>r      s   
			  



  9 9 9 9 9 9 9 93 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3h          7==!%%a(x) x) x) x) x) x) x) x)v  
 zDFFFFF rx   