
    z%iX                        d dl Z d dlZdZg dZdZdZdZdZddZ G d	 d
      Z	ddZ
ddZedk(  r ej                         Z e	dde      Z eej#                                 eej#                  d              eej#                  d              eej%                                 eej'                  d              eej'                  d              e e               eej)                  d      ej+                  d              eej+                  e              e	d      Z eej)                  d      ej+                  de              ej,                  ede      Zej1                           ej2                  edej4                        Zej1                           e	ed         j7                         Zej%                  e       ej%                  e        ej:                          yy)     Nz0.9)NORMALROMANBOLDITALIC
nametofontFontfamiliesnamesnormalromanbolditalicc                      	 t        | d|      S )NT)nameexistsroot)r   )r   r   s     @/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/tkinter/font.pyr   r      s    T$T22    c                       e Zd Z	  ej                  d      Zd Zd Zd ZddZ	d Z
d Zd	 Zd
 Zd Zd Zd ZddZd Zd ZeZddZd Zy)r      c                     g }|j                         D ]3  \  }}|j                  d|z          |j                  t        |             5 t        |      S N-)itemsappendstrtuple)selfkwoptionskvs        r   _setz	Font._set2   sL    HHJ 	#DAqNN3q5!NN3q6"	# W~r   c                 R    g }|D ]  }|j                  d|z           t        |      S r   )r   r   )r   argsr    r!   s       r   _getz	Font._get9   s0     	"ANN3q5!	"W~r   c                 b    i }t        dt        |      d      D ]  }||dz      |||   dd  <    |S )Nr      r   )rangelen)r   r%   r    is       r   _mkdictzFont._mkdict?   sD    q#d)Q' 	-A#'!9GDGABK 	-r   Nc                    |t        j                  d      }t        |d|      }|r#|j                  |j	                  dd|            }n| j                  |      }|s!dt        t        | j                              z   }|| _	        |rd| _
        | j                  |j                  |j	                  dd            vr-t         j                  j                  d| j                  d      |rF |j                  dd	| j                  g|  n& |j                  dd
| j                  g|  d| _
        || _        |j                  | _        |j                  | _        y )Nzuse fonttkfontactualFr
   znamed font z does not already exist	configurecreateT)tkinter_get_default_rootgetattr	splitlistcallr#   r   nextcounterr   delete_font_tkinterTclError_tk_split_call)r   r   r/   r   r   r    r.   s          r   __init__zFont.__init__E   s%   <,,Z8DT4&<<$ ?@D99W%DCT\\ 233D	$DyyRWWVW-E FF&&//>BiiIK K TYY>> BGGFHdii7$7#Dllgg
r   c                     | j                   S N)r   r   s    r   __str__zFont.__str__d   s    yyr   c                 ~    d| j                   j                   d| j                   j                   d| j                  dS )N<.z object >)	__class__
__module____qualname__r   rC   s    r   __repr__zFont.__repr__g   s<    4>>,,-Qt~~/J/J.K$))a) 	)r   c                     t        |t              st        S | j                  |j                  k(  xr | j                  |j                  k(  S rB   )
isinstancer   NotImplementedr   r=   )r   others     r   __eq__zFont.__eq__k   s7    %&!!yyEJJ&@488uyy+@@r   c                 $    | j                  |      S rB   )cget)r   keys     r   __getitem__zFont.__getitem__p   s    yy~r   c                 ,     | j                   di ||i y )N )r1   )r   rT   values      r   __setitem__zFont.__setitem__s   s    &#u&r   c                 x    	 | j                   r| j                  dd| j                         y y # t        $ r Y y w xY w)Nr/   delete)r:   r?   r   	ExceptionrC   s    r   __del__zFont.__del__v   s;    	

68TYY7   		s   )- 	99c                 L    	 t        | j                  fi | j                         S rB   )r   r=   r0   rC   s    r   copyz	Font.copy}   s    4DHH...r   c           	          	 d}|rd|f}|r(|d|z   fz   } | j                   dd| j                  g| S | j                  | j                   | j                   dd| j                  g|             S )NrW   
-displayofr   r/   r0   )r?   r   r,   r>   )r   option	displayofr%   s       r   r0   zFont.actual   s    ' ),D3<**D4::fh		ADAA<<JDJJvxJTJKM Mr   c                 F    	 | j                  dd| j                  d|z         S )Nr/   configr   )r?   r   )r   rb   s     r   rS   z	Font.cget   s"    zz&(DIIs6zBBr   c           	          	 |r/ | j                   dd| j                  g| j                  |        y | j                  | j	                  | j                  dd| j                                    S )Nr/   re   )r?   r   r#   r,   r>   )r   r    s     r   re   zFont.config   sc     DJJvx '99W%' <<DJJvxCDF Fr   c                     	 |f}|rd||f}| j                   j                   | j                  dd| j                  g|       S )Nra   r/   measure)r=   getintr?   r   )r   textrc   r%   s       r   rh   zFont.measure   sF    w )T2Dxxztzz&)TYYNNOOr   c                    	 d}|j                  dd       }|rd|f}|rL|| j                  |      z   }| j                  j                   | j                  dd| j
                  g|       S | j                   | j                  dd| j
                  g|       }i }t        dt        |      d      D ],  }| j                  j                  ||dz            |||   dd  <   . |S )	NrW   rc   ra   r/   metricsr   r(   r   )	popr&   r=   ri   r?   r   r>   r)   r*   )r   r    r   r%   rc   resr+   s          r   rl   zFont.metrics   s    	7 FF;-	 ),D$))G,,D88??

69dii?$?A A ++jdjjDIIMMNCG1c#h* @&*hhooc!A#h&?Aqr
#@Nr   )NNNFNNrB   )__name__rJ   rK   	itertoolscountr9   r#   r&   r,   r@   rD   rL   rQ   rU   rY   r]   r_   r0   rS   re   r1   rh   rl   rW   r   r   r   r      su    * iooa G>)A
'/
MCF IPr   r   c                     	 | t        j                  d      } d}|rd|f}| j                  j                   | j                  j                  ddg|       S )Nzuse font.families()rW   ra   r/   r	   r3   r4   r.   r6   r7   )r   rc   r%   s      r   r	   r	      sX    $|(()>?Di(77\TWW\\&*DtDEEr   c                     	 | t        j                  d      } | j                  j                  | j                  j	                  dd            S )Nzuse font.names()r/   r
   rt   )r   s    r   r
   r
      s?    -|(();<77TWW\\&':;;r   __main__times   )familysizeweightry   r{   hello	linespace)rc   )Courier   r   )r/   zHello, world)rj   r/   zQuit!)rj   commandr/   )r{   rB   ro   )rq   r3   __version____all__r   r   r   r   r   r   r	   r
   rp   Tkr   fprintr0   re   rS   rh   rl   LabelwpackButtondestroyr_   fbmainlooprW   r   r   <module>r      s    6 
		3[ [|F< z7::<D 	G"V4A	!((*	!((8
	!((8
	!((*	!&&
	!&&
	%'N	!))G
aii45	!))d)
#$)*A	!))G
aiitiDEda8AFFHt'4<<@AFFH	1V9		"	"	$BIITIHH"HGG r   