
    5bh?#                     T   	 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 d dlmZmZmZmZmZmZmZmZmZmZ d dlmZ  e       Zej                  dk(  rej2                  dkD  rdnd	Zn e       d    dd
 Z G d de      Zedk(  r d dlmZ  edd
d       d dlm Z   e e       yy)    N)python_versionarchitecture)ToplevelFrameLabelButton
PhotoImage)
SUNKENTOPBOTTOMLEFTXBOTHWEWNSEWE)textviewdarwinl        6432   c                   ^    e Zd Z	 dddddZd Zd Zd Zd Zd	 Zd
 Z	d Z
d ZddZddZy)AboutDialogNF)_htest_utestc                   	 t        j                  | |       | j                  d       | j                  d|j	                         dz   |j                         |sdndz   fz         d| _        d| _        | j                          | j                  dd	       | j                  |xs d
t         dt         d       | j                  |       | j                          | j                  d| j                          || _        | j$                  j'                          | j)                  d| j                          | j)                  d| j                          d | _        || _        |s!| j/                          | j1                          y y )N   )borderwidthz+%d+%d   d   z#bbbbbbz#000000F)heightwidthzAbout IDLE z (z bit)WM_DELETE_WINDOWz<Return>z<Escape>)r   __init__	configuregeometrywinfo_rootxwinfo_rootybgfgcreate_widgets	resizabletitlepyverbits	transientgrab_setprotocolokparent	button_ok	focus_setbind_current_textviewr   	deiconifywait_window)selfr5   r.   r   r   s        </opt/python-3.12.12/usr/lib/python3.12/idlelib/help_about.pyr%   zAboutDialog.__init__   sI   	 	$'1%h**,R/**,bCH"J J 	K e51

5 6 r$u5	7v($''2  "		*dgg&		*dgg&!%NN     c                    t        | dt              }t        |       }|j                  t        t               |j                  t
        dt               t        |d| j                        | _	        | j                  j                  dd	       t        || j                  
      }|j                  dt               t        |d| j                  | j                  d      }|j                  ddt        dd       | j                         j!                  d      }|dk\  rdnd}t"        j$                  j'                  t"        j$                  j)                  t"        j$                  j+                  t,                    dd|       }t/        | j                         |      | _        t        || j0                  | j                        }|j                  ddt2        ddd       d}	t        ||	t4        | j                  | j                        }
|
j                  ddt2        ddd       dt        |d d!| j                  fd"#      }|j                  d$dt2        dd       d%t6        j8                  d d z  t        |d&d!| j                  fd'#      }|j                  d(ddt2        dd)       t        |d*t        d| j                  +      j                  d,dt:        ddd       t=        | j?                               }||k7  rd-|z   nd.}d/t@         d0| | }t        ||| j                  | j                  1      }|j                  d2dt2        dd       t        || j                  
      }|j                  dddtB        3       t        |d4d,| j                  | jD                  #      | _#        | jF                  j                  t4        dd5       t        |d6d,| j                  | jH                  #      | _%        | jJ                  j                  t4        dd5       t        |d7d,| j                  | jL                  #      | _'        | jN                  j                  t4        dd5       t        |d*t        d| j                  +      j                  d8dt:        ddd       t        |d| j                  | j                  1      }|j                  d9dt2        dd       t        || j                  
      }|j                  d:ddtB        3       t        |d;d,| j                  | jP                  #      | _)        | jR                  j                  t4        dd5       t        |d<d,| j                  | jT                  #      | _+        | jV                  j                  t4        dd5       t        |d7d,| j                  | jX                  #      | _-        | jZ                  j                  t4        dd5       y )=Nr   )r   relief)sidefillT)rA   expandrB   Close)textcommandr   )padxpady)r*   )rC   rB   IDLE)courier   bold)rE   r+   r*   fontr   
   )rowcolumnstickyrG   rH   tk_patchLevelz8.6z.pngz.gifIconsidle_48)masterfile)imager*   )rO   rP   rQ   rowspanrG   rH   z=Python's Integrated Development
and Learning Environment




)rE   justifyr+   r*      )rO   rP   rQ   
columnspanrG   rH   zhttps://discuss.python.orgzPython (and IDLE) Discussion#   c                  .    t        j                         S N
webbrowseropen)
forums_urls   r=   <lambda>z,AboutDialog.create_widgets.<locals>.<lambda>\   s    1Lr>   )rE   r#   highlightbackgroundrF      z/https://docs.python.org/%d.%d/library/idle.htmlzIDLE Documentationc                  .    t        j                         S r^   r_   )docs_urls   r=   rc   z,AboutDialog.create_widgets.<locals>.<lambda>d   s    1Jr>      )rO   rP   r[   rQ   rG   rH      )r   r@   r"   r*      z and  zPython z with tcl/tk )rE   r+   r*   	   )rO   rP   r[   rQ   License)rA   rG   rH   	CopyrightCredits         ReadmeNews).r   r
   packr   r   r   r   r   r4   r6   r*   r   r+   gridr   _rootgetvarospathjoinabspathdirname__file__r	   
icon_imager   r   sysversion_infor   strinfo_patchlevelr/   r   show_py_license
py_licenseshow_py_copyrightpy_copyrightshow_py_credits
py_creditsshow_readmereadmeshow_idle_news	idle_newsshow_idle_creditsidle_credits)r<   frameframe_buttonsframe_backgroundheadertkpatchexticonlogobyline_textbylineforumsdocstclvertkverversionsvers
py_buttonsidleidle_buttonsrg   rb   s                       @@r=   r,   zAboutDialog.create_widgets<   s   d&9dQ/

Dt
4G(,1+ 4773T5'f''(?A!ABR@**,%%o65(ffww||BGGOOBGGOOH,EF#wse_6$DJJLtD%T__I		a!QRb	IZ'k4''dgg/!A!"1M1
(/MUW59WW)LN 	!ABR@ F$$Ra()&-A59WW)JL 			aa	L 	Af477	$$(DQq45AA %) %G T))+,%,%6'!BUG=@%HTWWM		a!"1	=+8
BqQtD )159WW)-)=)=? 	$Rb9":Kq7;ww+/+A+AC 	Dr; )159WW)-)=)=? 	$Rb9Af477	$$(DR"45AA %) %G %Ftww477K		b12A	>-$'':bqF\15%)%5%57 	d"5648GG(,(;(;= 	BR8"<iq7;ww+/+A+AC 	Dr;r>   c                 2    	 | j                  dt               y )NzAbout - License)display_printer_textlicenser<   s    r=   r   zAboutDialog.show_py_license   s    &!!"3W=r>   c                 2    	 | j                  dt               y )NzAbout - Copyright)r   	copyrightr   s    r=   r   zAboutDialog.show_py_copyright   s    (!!"5yAr>   c                 2    	 | j                  dt               y )NzAbout - Python Credits)r   creditsr   s    r=   r   zAboutDialog.show_py_credits   s    -!!":GDr>   c                 ,    	 | j                  ddd       y )NzAbout - CreditszCREDITS.txtutf-8display_file_textr   s    r=   r   zAboutDialog.show_idle_credits   s    +0-Ir>   c                 ,    	 | j                  ddd       y )NzAbout - Readmez
README.txtasciir   r   s    r=   r   zAboutDialog.show_readme   s    %/wGr>   c                 ,    	 | j                  ddd       y )NzAbout - Newsz	News3.txtr   r   r   s    r=   r   zAboutDialog.show_idle_news   s    #~{GDr>   c                     	 |j                          dj                  |j                        }t        j                  | ||| j
                        | _        y )N
r   )_Printer__setupr{   _Printer__linesr   	view_textr   r9   )r<   r.   printerrE   s       r=   r   z AboutDialog.display_printer_text   sI    	 	!yy001!)!3!3%dkk"3r>   c                    	 t         j                  j                  t         j                  j                  t         j                  j	                  t
                    |      }t        j                  | |||| j                        | _	        y )Nr   )
ry   rz   r{   r|   r}   r~   r   	view_filer   r9   )r<   r.   filenameencodingfns        r=   r   zAboutDialog.display_file_text   sY    	 WW\\"''//"''//(*CDhO!)!3!3%Xdkk";r>   c                 F    	 | j                          | j                          y r^   )grab_releasedestroy)r<   events     r=   r4   zAboutDialog.ok   s    $r>   r^   )__name__
__module____qualname__r%   r,   r   r   r   r   r   r   r   r   r4    r>   r=   r   r      sO     U5  DW<t>BEJHE3	;r>   r   __main__)mainz!idlelib.idle_test.test_help_aboutF)	verbosityexit)run)!ry   r   r`   platformr   r   tkinterr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   idlelibr   r/   maxsizer0   r   r   unittestr   idlelib.idle_test.htestr   r   r>   r=   <module>r      s    
 
  1 > > F F F <<8;;&4DD>!Ra Du( up z	,F+ r>   