a 4êdg¥ã@s‚ddlZddlZdZgd¢ZdZdZdZdZdd „ZGd d „d ƒZ d!d d „Z d"dd„Z e dkr~e  ¡Ze ddedZee ¡ƒee d¡ƒee d¡ƒee ¡ƒee d¡ƒee d¡ƒee ƒƒee d¡e d¡ƒeejedƒe ddZee d¡ejdedƒejededZe ¡ejedejdZe ¡e edd ¡Zejed ejede ¡dS)#éNz0.9)ÚNORMALÚROMANÚBOLDÚITALICÚ nametofontÚFontÚfamiliesÚnamesZnormalZromanÚboldZitaliccCs t|ddS)NT)ÚnameÚexists)r©r ©rú(/usr/local/lib/python3.9/tkinter/font.pyrsrc@s˜eZdZe d¡Zdd„Zdd„Zdd„Zd"d d „Z d d „Z dd„Z dd„Z dd„Z dd„Zdd„Zd#dd„Zdd„Zdd„ZeZd$dd„Zd d!„ZdS)%récCs:g}| ¡D]$\}}| d|¡| t|ƒ¡q t|ƒS©Nú-)ÚitemsÚappendÚstrÚtuple)ÚselfÚkwÚoptionsÚkÚvrrrÚ_set2s z Font._setcCs$g}|D]}| d|¡qt|ƒSr)rr)rÚargsrrrrrÚ_get9sz Font._getcCs:i}tdt|ƒdƒD] }||d|||dd…<q|S)Nrér)ÚrangeÚlen)rrrÚirrrÚ_mkdict?sz Font._mkdictNFcKsæ|st d¡}t|d|ƒ}|r4| | dd|¡¡}n | |¡}|sTdtt|jƒƒ}||_ |r®d|_ |j | | dd¡¡vrtj   d|j f¡‚|rÌ|jdd|j g|¢RŽn|jdd |j g|¢RŽd |_ ||_ |j|_|j|_dS) Nzuse fontÚtkÚfontÚactualFr z$named font %s does not already existÚ configureZcreateT)ÚtkinterÚ_get_default_rootÚgetattrÚ splitlistÚcallrrÚnextÚcounterr Ú delete_fontZ_tkinterZTclErrorÚ_tkÚ_splitÚ_call)rÚrootr%r r rr$rrrÚ__init__Es,    ÿz Font.__init__cCs|jS©Nr ©rrrrÚ__str__dsz Font.__str__cCs&t|tƒstS|j|jko$|j|jkSr5)Ú isinstancerÚNotImplementedr r0)rÚotherrrrÚ__eq__gs z Font.__eq__cCs | |¡Sr5)Úcget)rÚkeyrrrÚ __getitem__lszFont.__getitem__cCs|jfi||i¤ŽdSr5)r')rr=ÚvaluerrrÚ __setitem__oszFont.__setitem__cCs2z|jr| dd|j¡Wnty,Yn0dS)Nr%Údelete)r/r2r Ú Exceptionr6rrrÚ__del__rs  z Font.__del__cCst|jfi| ¡¤ŽSr5)rr0r&r6rrrÚcopyysz Font.copycCsbd}|rd|f}|r:|d|f}|jdd|jg|¢RŽS| | |jdd|jg|¢RŽ¡¡SdS)Nrú -displayofrr%r&)r2r r#r1)rÚoptionÚ displayofrrrrr&}sÿz Font.actualcCs| dd|jd|¡S)Nr%Úconfigr)r2r )rrFrrrr<‰sz Font.cgetc KsD|r$|jdd|jg| |¡¢RŽn| | | dd|j¡¡¡SdS)Nr%rH)r2r rr#r1)rrrrrrHsÿ ÿz Font.configcCs4|f}|rd||f}|j |jdd|jg|¢RŽ¡S)NrEr%Úmeasure)r0Úgetintr2r )rÚtextrGrrrrrI˜s z Font.measurecOs²d}| dd¡}|rd|f}|rN|| |¡}|j |jdd|jg|¢RŽ¡S| |jdd|jg|¢RŽ¡}i}tdt|ƒdƒD](}|j ||d¡|||dd…<q€|SdS) NrrGrEr%Úmetricsrrr) Úpoprr0rJr2r r1r r!)rrrrrGÚresr"rrrrLŸs ÿ&z Font.metrics)NNNF)NN)N)Ú__name__Ú __module__Ú __qualname__Ú itertoolsÚcountr.rrr#r4r7r;r>r@rCrDr&r<rHr'rIrLrrrrrs"     rcCs<|st d¡}d}|rd|f}|j |jjddg|¢RŽ¡S)Nzuse font.families()rrEr%r©r(r)r$r+r,)r3rGrrrrr´s  rcCs$|st d¡}|j |j dd¡¡S)Nzuse font.names()r%r rT)r3rrrr ¾s r Ú__main__Útimesé)ÚfamilyÚsizeÚweightrXrZZhelloZ linespace)rG)ZCourierér )r%z Hello, world)rKr%zQuit!)rKZcommandr%)rZ)NN)N)rRr(Ú __version__Ú__all__rrrrrrrr rOZTkr3ÚfÚprintr&rHr<rIrLZLabelÚwÚpackZButtonZdestroyrDZfbZmainlooprrrrÚsD