
    %
i!                     :   d dl Z d dlZd dlZd dlZd dlmZ d dlmZ ej        dz   Z	 G d dej
                  Z G d dej                  Z G d	 d
e          Z G d dej                  Zd Zd Zedk    rd dlZ ej                    r e             dS dS dS )    N)window)	WinThread    c                   F    e Zd ZddZd Zd Zd Zd Zd Zd Z	d	 Z
d
 ZdS )
FontWindowPython Rules!c                     t           j                            |            || _        d| _        d| _        dx| _        | _        |                                  d S )Nr      )	r   Wnd__init__textindexincrwidthheightChangeAttributes)selfr   s     C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\pythonwin/pywin/Demos/threadedgui.pyr   zFontWindow.__init__   sS    
D!!!	
	#$$
T[    c                 p   t           j        t           j        z  }t          j        |dt           j        dz   d          }t          j                    | _        | j                            |            | j        	                    |||||t          j
                   |                     | j        t           j                   |                     | j        t                     |                     | j        t           j                   t%          j        d| j                  | _        |                                  d S )Nr   r
   d   )win32con
CS_HREDRAW
CS_VREDRAWwin32uiRegisterWndClassCOLOR_WINDOW	CreateWnd_obj_AttachObjectCreateWindowAFX_IDW_PANE_FIRSTHookMessageOnSizeWM_SIZEOnPrepareToCloseWM_USER_PREPARE_TO_CLOSE	OnDestroy
WM_DESTROYtimer	set_timerOnTimertimeridInvalidateRect)r   titlestylerectparent
classStyle	classNames          r   CreatezFontWindow.Create"   s   (8+>>
,8014a
 
	 &((

%%%
ueT673M	
 	
 	
 	h&6777.0HIII)<===sDL99r   c                 8    t          j        | j                   d S N)r*   
kill_timerr-   r   msgs     r   r(   zFontWindow.OnDestroy2   s    &&&&&r   c                    | xj         | j        z  c_         | j         t          | j                  k    r!d| _        t          | j                  | _         n| j         dk     rd| _        d| _         |                                  d S )Nr   r
   )r   r   lenr   r.   )r   idtimeVals      r   r,   zFontWindow.OnTimer5   sr    

di

:DI&&DITYDJJZ!^^DIDJr   c                    |                                  \  }}|                     |d            | j        dk    r8| j        dk    r-|                                 \  }}}}||z
  | _        ||z
  | _        | j        dz  | j        dz  }}|                    ||| j        d | j                            |                     |           d S )Nr      )	
BeginPaintOnPrepareDCr   r   GetClientRectTextOutr   r   EndPaint)	r   dcpaintStructlefttoprightbottomxys	            r   OnPaintzFontWindow.OnPaint?   s    //++KT""":??t{a//'+'9'9';';$D#ufDJ 3,DKzQq 01


1a<TZ<0111k"""""r   c                 B    ddd}t          j        |          | _        d S )NArial*   )namer   )r   
CreateFontfont)r   	font_specs     r   r   zFontWindow.ChangeAttributesL   s%    $33	&y11			r   c                 .    |                                   d S r7   )DestroyWindow)r   paramss     r   r&   zFontWindow.OnPrepareToCloseP   s    r   c                 z    |d         }t          j        |          | _        t          j        |          | _        d S )N   )win32apiLOWORDr   HIWORDr   )r   rY   lParams      r   r$   zFontWindow.OnSizeS   s1    _V,,
of--r   c                 F   |                     t          j        ddd                     |                    t          j        t
          j                             |                    | j                   |	                    t
          j
        t
          j        z             d S )Nr      )SetTextColorr\   RGB
SetBkColorGetSysColorr   r   SelectObjectrU   SetTextAlign	TA_CENTERTA_BASELINE)r   rG   	printinfos      r   rC   zFontWindow.OnPrepareDCX   sy    
Q3//000
h*8+@AABBB
	"""
*X-AABBBBBr   N)r   )__name__
__module____qualname__r   r5   r(   r,   rO   r   r&   r$   rC    r   r   r   r      s                  ' ' '  # # #2 2 2  . . .
C C C C Cr   r   c                       e Zd Zd ZddZdS )	FontFramec                     d S r7   rn   r   s    r   r   zFontFrame.__init__a       r   Nc                    t           j        t           j        z  t           j        z  }t	          j                    | _        | j                            |            | j                            d ||||           | 	                                }dd|d         |d         z
  |d         |d         z
  f}t          d          | _        | j                            dt           j        t           j        z  ||            d S )Nr   rA   r[   r
   Not threadedFontDemo)r   WS_CHILD
WS_VISIBLEWS_OVERLAPPEDWINDOWr   CreateMDIChildr   r    r!   rD   r   childr5   r   r/   r1   r2   r0   s        r   r5   zFontFrame.Created   s    !H$77(:VV+--

%%%
eUD&AAA!!##1d1gQ'a47):;//

)H,??t	
 	
 	
 	
 	
r   NN)rk   rl   rm   r   r5   rn   r   r   rp   rp   `   s7          
 
 
 
 
 
r   rp   c                        e Zd Zd Zd Zd ZdS )
TestThreadc                 J    || _         d | _        t          j        |            d S r7   )parentWindowr{   r   r   )r   r   s     r   r   zTestThread.__init__s   s(    (
4     r   c                 p   | j                                         }dd|d         |d         z
  |d         |d         z
  f}t                      | _        | j                            dt
          j        t
          j        z  || j                    |                     | j                   t          j
        |           S )Nr   rA   r[   r
   rv   )r   rD   r   r{   r5   r   rw   rx   SetMainFramer   InitInstance)r   r1   s     r   r   zTestThread.InitInstancex   s     ..001d1gQ'a47):;\\

)H,??tGX	
 	
 	
 	$*%%%%d+++r   c                     dS )Nr   rn   rr   s    r   ExitInstancezTestThread.ExitInstance   s    qr   N)rk   rl   rm   r   r   r   rn   r   r   r   r   r   sA        ! ! !
	, 	, 	,    r   r   c                   (    e Zd Zd ZddZd Zd ZdS )ThreadedFontFramec                     	 d | _         d S r7   )threadrr   s    r   r   zThreadedFontFrame.__init__   s    r   Nc                    t           j        t           j        z  t           j        z  }t	          j                    | _        | j                            d ||||           | j                            | j	        t           j
                   | j                            | j        t           j                   t          |           | _        | j                                         d S r7   )r   rw   rx   ry   r   rz   r   r!   r#   r(   r)   r$   r%   r   r   CreateThreadr|   s        r   r5   zThreadedFontFrame.Create   s    !H$77(:VV+--

eUD&AAA
t~x/BCCC
t{H,<=== &&  """""r   c                     d S r7   rn   r9   s     r   r$   zThreadedFontFrame.OnSize   rs   r   c                     t          j        d           | j        rJ| j        j        r@| j        j        }|                    t
          dd           t          j        d           d S d S d S )Nz
OnDestroy
r   z
Destroyed
)r   OutputDebugStringr   r{   SendMessager'   )r   r:   r{   s      r   r(   zThreadedFontFrame.OnDestroy   sw    !-000; 	54;, 	5K%E61===%m44444	5 	5 	5 	5r   r}   )rk   rl   rm   r   r5   r$   r(   rn   r   r   r   r      sU          # # # #  5 5 5 5 5r   r   c                  L    t                      } |                     d           d S )Nz	Font Demo)rp   r5   )fs    r   Demor      s#    AHH[r   c                  :   t          j                                                                                    } | d         t	          | d         dz  dz            t	          | d         dz            | d         f} | d         }t          d          D ]c}|dk    rt                      }d}nt                      }d}|                    ||            | d         |z   | d         | d         |z   | d         f} dt          j
        d           t          j                     d S )	Nr   r[      rA   ru   zThreaded GUI Demor
   r   )r   GetMainFrameGetMDIClientrD   intrangerp   r   r5   r\   SleepPumpWaitingMessages)r1   r   ir   r/   s        r   ThreadedDemor      s   !!..00>>@@D7CQ!a((#d1gk*:*:DGCD7D1XX @ @66A"EE!##A'E	Aw~tAwQ$Q?N3!!!!!r   __main__)r*   r\   r   r   	pywin.mfcr   pywin.mfc.threadr   WM_USERr'   r   r   MDIChildWndrp   r   r   r   r   rk   	demoutilsNeedGoodGUIrn   r   r   <module>r      s  
           & & & & & &#+b0 EC EC EC EC EC EC EC ECP
 
 
 
 
" 
 
 
$       *5 5 5 5 5* 5 5 54  
" " "$ zy 	  r   