B YI~dØHã@s"ddlZddlZddlZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZdZdZdZdZdZdZd ZdZdZdZej dkr¨dZ!eeeefZ"ndZ!eeeefZ"e#dd„e$e%e!ƒƒDƒƒZ&d Z'Gd!d"„d"ƒZ(e$de%e!ƒ>ƒZ)d#d„e)DƒZ*d$d%„Z+e+e)ƒZ,gZ-xNe)D]FZ.dZ/x0e$e%e!ƒƒD] Z0de0>e.@�r2e/e"e0OZ/�q2We- 1e/¡�qWGd&d'„d'ƒZ2d(Z3e2fde(fe%e3ƒdZ4e#d)d„e$e%e3ƒƒDƒƒZ5e 6d*¡Z7e 6d+¡Z8d,d-„Z9d.d/„Z:iZ;d0d1„Zd4k�rdd5l?m@Z@e@d6dd7d8�dd9lAmBZBeBe=ƒdS):éNééééééééé é é é é éééééééééé é@é€Údarwin))ÚShift)ÚControl)ZOption)ZCommand))r)ZAlt)r)ZMetaÚMcCs"g|]}t|D] }||f‘qqS©)Ú _modifiers)Ú.0ÚnumberÚnamerrú6/opt/alt/python37/lib64/python3.7/idlelib/multicall.pyú 7sr%zapplication has been destroyedc@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) Ú _SimpleBindercCs8||_dt|dd|_||_||_g|_d|_dS)Nú)ÚtypeÚ_typesÚsequenceÚwidgetÚ widgetinstÚ bindedfuncsÚ handlerid)Úselfr)r,r-rrr$Ú__init__Js z_SimpleBinder.__init__cCs>|js.|j|jfdd„}|j |j|j|¡|_|j |¡dS)NcSsT||_i}xDtt|ƒdddƒD],}||}||kr d||<||ƒ}|r |Sq WdS)NréÿÿÿÿT)Úmc_typeÚrangeÚlen)ÚeventÚlr3Ú wascalledÚiÚfuncÚrrrr$ÚhandlerTsz#_SimpleBinder.bind..handler)r/r.r)r,Úbindr-r+Úappend)r0Útripletr:r<rrr$r=Rs   z_SimpleBinder.bindcCs2|j |¡|js.|j |j|j|j¡d|_dS)N)r.Úremover,Úunbindr-r+r/)r0r?r:rrr$rAbs z_SimpleBinder.unbindc CsZ|jrVy|j |j|j|j¡Wn4tjk rT}zt|jdkrD‚Wdd}~XYnXdS)Nr) r/r,rAr-r+ÚtkinterÚTclErrorÚAPPLICATION_GONEÚargs)r0Úerrr$Ú__del__hs z_SimpleBinder.__del__N)Ú__name__Ú __module__Ú __qualname__r1r=rArGrrrr$r&Isr&cs(g|] ‰d ‡fdd„ttƒDƒ¡‘qS)Úc3s*|]"\}}d|>ˆ@r|ddVqdS)rrú-Nr)r!r9Úm)Úsrr$ú wsz.)ÚjoinÚ enumerater )r!r)rNr$r%wscsPdd„}g}x>|D]6‰tt‡fdd„|Dƒƒƒ}|j|dd�| |¡qW|S)NcSs(d}x|r"t|dƒ\}}||7}qW|S)Nrr)Údivmod)ÚnÚnbZremrrr$Únbits€s  zexpand_substates..nbitsc3s|]}ˆ|@VqdS)Nr)r!Úx)Ústaterr$rO‰sz#expand_substates..T)ÚkeyÚreverse)ÚlistÚsetÚsortr>)ZstatesrUZ statelistZ substatesr)rWr$Úexpand_substates|s r]c@s4eZdZdd„Zdd„Zdd„Zdd„Zd d „Zd S) Ú_ComplexBindercCs||||j|jfdd„}|S)Nc Ss¶dg|dd…<||_||_i}d}xZ|D]R}xFtt|ƒdddƒD].} || } | |krBd|| <|| |ƒ}|rBPqBW|r(Pq(Wg|dd…<x|D] } | ƒq�Wg|dd…<|r²|SdS)NTrr2)r3Úmc_stater4r5) r6Úlistsr3r_ÚishandlerrunningÚdoafterhandlerr8r;r7r9r:Úfrrr$r<¢s*      z0_ComplexBinder.__create_handler..handler)rarb)r0r`r3r_r<rrr$Z__create_handler¡s z_ComplexBinder.__create_handlerc s´|ˆ_t|dˆ_|ˆ_|ˆ_ddd„tDƒiˆ_gˆ_gˆ_gˆ_ xhtD]`}‡fdd„t |Dƒ}ˆ  ||t |¡}dt |ˆjd}ˆj |ˆj ˆj||¡f¡qLWdS)NrcSsg|]}g‘qSrr)r!rNrrr$r%Ãsz+_ComplexBinder.__init__..csg|]}ˆjd|‘qS)N)r.)r!r9)r0rr$r%Ïsr'r()r)r*Útypenamer,r-Ú_statesr.Ú handleridsrarbÚ_state_subsetsÚ_ComplexBinder__create_handlerÚ _state_codesÚ _state_namesr>r=)r0r)r,r-rNr`r<Úseqr)r0r$r1¾s z_ComplexBinder.__init__c sȈdˆjkršdd„tDƒˆjˆd<xrtD]j‰‡‡fdd„ˆddfDƒ}ˆ |ˆjtˆ¡}dtˆˆjˆdf}ˆj |ˆj   ˆj ||¡f¡q,W‡‡‡fdd„}ˆj s¸|ƒn ˆj  |¡dS)NrcSsg|]}g‘qSrr)r!rNrrr$r%×sz'_ComplexBinder.bind..cs(g|] }tˆD]}ˆj||‘qqSr)rgr.)r!Údetailr9)rNr0rr$r%Ùsz <%s%s-%s>csˆjˆdˆd ˆ¡S)Nrr)r.r>r)r:r0r?rr$Úáóz%_ComplexBinder.bind..)r.rerhr)rirjrdrfr>r,r=r-rarb)r0r?r:r`r<rkÚdoitr)r:rNr0r?r$r=Õs    z_ComplexBinder.bindcs.‡‡‡fdd„}ˆjs|ƒn ˆj |¡dS)Ncsˆjˆdˆd ˆ¡S)Nrr)r.r@r)r:r0r?rr$rmèrnz'_ComplexBinder.unbind..)rarbr>)r0r?r:ror)r:r0r?r$rAçsz_ComplexBinder.unbindc Csdx^|jD]T\}}y|j |j||¡Wqtjk rZ}zt|jdkrJ‚Wdd}~XYqXqWdS)Nr)rfr,rAr-rBrCrDrE)r0rkÚidrFrrr$rGîs z_ComplexBinder.__del__N)rHrIrJrhr1r=rArGrrrr$r^™s r^))ÚKeyPressZKey)Ú KeyRelease)Z ButtonPressZButton)Z ButtonRelease)ZActivate)Z Circulate)ZColormap)Z Configure)Z Deactivate)ZDestroy)ZEnter)ZExpose)ZFocusIn)ZFocusOut)ZGravity)ZLeave)ZMap)ZMotion)Z MouseWheel)ZProperty)ZReparent)ZUnmap)Z VisibilitycCs"g|]}t|D] }||f‘qqSr)r*)r!r"r#rrr$r%sz^\w+$z^[1-5]$cCs|r|ddks|ddkr dS|dd… d¡}d}x.|rd|dtkrd|dt|d>O}|d=q8W|rŠ|dtkrŠt|d}|d=ndSt|tkr¬|s¢|r¦dSd}nN|dd„d DƒkrÄt}nt}|sÒd}n(t|ƒdkrö| |d¡rö|d}ndS|||fS) Nrr'r2r(rrLcSsg|] }t|‘qSr)Ú _type_names)r!rNrrr$r%$sz#_parse_sequence..)rqrr) ÚsplitÚ_modifier_namesrsÚ_binder_classesr&Ú _keysym_reÚ _button_rer5Úmatch)r+ZwordsÚ modifiersr)rlZtype_rerrr$Ú_parse_sequence s0    r{cCs`|dr8dt|dt|ddd|ddSdt|dt|dddSdS)Nrr'rrrLr()rjr*)r?rrr$Ú_triplet_to_sequence2s0r|cs0ˆtkrtˆSG‡fdd„dˆƒ}|tˆ<|S)NcsbeZdZ‡fdd„Zd‡fdd„ Zd‡fdd„ Z‡fdd „Z‡fd d „Zd‡fd d „ Zdd„Z dS)z#MultiCallCreator..MultiCallcs:ˆjˆf|ž|Žiˆ_‡‡fdd„tttƒƒDƒˆ_dS)Ncsg|]}t||ˆˆƒ‘qSr)rv)r!r9)r0r,rr$r%Ksz@MultiCallCreator..MultiCall.__init__..)r1Ú_MultiCall__eventinfor4r5r*Ú_MultiCall__binders)r0rEÚkwargs)r,)r0r$r1Es z,MultiCallCreator..MultiCall.__init__Ncsàt|ƒtkrÐt|ƒdkrÐ|dd…dkrÐ|dd…dkrÐ||jkrÂ|j|}|ddk r„x*|dD]}|j|d ||d¡qbW||d<|ddk rÐx6|dD]}|j|d ||¡q¢Wn|gg|j|<ˆ ||||¡S)Nrz<<éþÿÿÿz>>rr)r)Ústrr5r}r~rAr=)r0r+r:ÚaddZeir?)r,rr$r=Ns     z(MultiCallCreator..MultiCall.bindcs˜t|ƒtkrŠt|ƒdkrŠ|dd…dkrŠ|dd…dkrŠ||jkrŠ|j|\}}|dk rŠx"|D]}|j|d ||¡q^Wd|j|d<ˆ |||¡S)Nrz<>rr)r)r�r5r}r~rA)r0r+Zfuncidr:Útripletsr?)r,rr$rA`s   z*MultiCallCreator..MultiCall.unbindcs€||jkrdgg|j|<|j|\}}xT|D]L}t|ƒ}|dkrPˆ |||¡q,|dk rn|j|d ||¡| |¡q,WdS)Nr)r}r{Ú event_addr~r=r>)r0ÚvirtualÚ sequencesr:rƒrkr?)r,rr$r„ks  z-MultiCallCreator..MultiCall.event_addcsv||jkrdS|j|\}}xT|D]L}t|ƒ}|dkrFˆ |||¡q"|dk rd|j|d ||¡| |¡q"WdS)Nr)r}r{Ú event_deleter~rAr@)r0r…r†r:rƒrkr?)r,rr$r‡|s  z0MultiCallCreator..MultiCall.event_deletecsF|dks||jkrˆ ||¡Sttt|j|dƒƒˆ ||¡SdS)Nr)r}Ú event_infoÚtupleÚmapr|)r0r…)r,rr$rˆŠs  z.MultiCallCreator..MultiCall.event_infoc Ss„x~|jD]t}|j|\}}|rx\|D]T}y|j|d ||¡Wq$tjk rv}zt|jdkrf‚Wdd}~XYq$Xq$WqWdS)Nrr)r}r~rArBrCrDrE)r0r…r:rƒr?rFrrr$rG’s  z+MultiCallCreator..MultiCall.__del__)NNN)N)N) rHrIrJr1r=rAr„r‡rˆrGr)r,rr$Ú MultiCallBs   r‹)Ú_multicall_dict)r,r‹r)r,r$ÚMultiCallCreator:s [r�csÖt |¡}| d¡tt| ¡ d¡dd…ƒ\}}| d||df¡ttjƒ|ƒ‰ˆ  ¡dgf‡fdd„ }|d ƒ|d ƒ|d ƒ|d ƒ|d ƒ|dƒ|dƒ|dƒ|dƒ|dƒ|dƒ|dƒdS)NzTest MultiCallú+rz+%d+%dé¯rcsH‡fdd„}ˆ d|d|¡ˆ d|dˆ¡|dd7<dS)Ncs tˆƒdS)N)Úprint)r6)rkrr$r<©sz-_multi_call..bindseq..handlerz <>rr)r=r„)rkrSr<)Útext)rkr$Úbindseq¨s z_multi_call..bindseqzz z zzzzz zz zz) rBZToplevelÚtitlerŠÚintZgeometryrtr�ZTextÚpack)ÚparentÚtoprVÚyr’r)r‘r$Ú _multi_call¡s&   r™Ú__main__)Úmainzidlelib.idle_test.test_mainmenuF)Ú verbosityÚexit)Úrun)CÚreÚsysrBZ MC_KEYPRESSZ MC_KEYRELEASEZMC_BUTTONPRESSZMC_BUTTONRELEASEZ MC_ACTIVATEZ MC_CIRCULATEZ MC_COLORMAPZ MC_CONFIGUREZ MC_DEACTIVATEZ MC_DESTROYZMC_ENTERZ MC_EXPOSEZ MC_FOCUSINZ MC_FOCUSOUTZ MC_GRAVITYZMC_LEAVEZMC_MAPZ MC_MOTIONZ MC_MOUSEWHEELZ MC_PROPERTYZ MC_REPARENTZMC_UNMAPZ MC_VISIBILITYZMC_SHIFTZ MC_CONTROLZMC_ALTZMC_METAZ MC_OPTIONZ MC_COMMANDÚplatformr Z_modifier_masksÚdictr4r5rurDr&rerjr]rgrirNr;r9r>r^r*rvrsÚcompilerwrxr{r|rŒr�r™rHZunittestr›Zidlelib.idle_test.htestržrrrr$ÚsŠ   - `   'g