HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: //usr/lib/python3.5/idlelib/__pycache__/MultiCall.cpython-35.pyc


FaH@sdZddlZddlZddlZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdQZdRZdSZdTZdUZdVZ ej!dkrd[Z"eeee fZ#nd`Z"eeeefZ#e$d!d"e%e&e"DZ'd#Z(Gd$d%d%Z)e%de&e">Z*d&d"e*DZ+d'd(Z,e,e*Z-gZ.xZe*D]RZ/dZ0x6e%e&e"D]"Z1de1>e/@re0e#e1OZ0qWe.j2e0qWGd)d*d*Z3dxZ4e3fde)fe&e4dZ5e$dDd"e%e&e4DZ6ej7dEZ8ej7dFZ9dGdHZ:dIdJZ;iZ<dKdLZ=dMdNZ>e?dOkrddPl@mAZAeAe>dS)ya
MultiCall - a class which inherits its methods from a Tkinter widget (Text, for
example), but enables multiple calls of functions per virtual event - all
matching events will be called, not only the most specific one. This is done
by wrapping the event functions - event_add, event_delete and event_info.
MultiCall recognizes only a subset of legal event sequences. Sequences which
are not recognized are treated by the original Tk handling mechanism. A
more-specific event will be called before a less-specific event.

The recognized sequences are complete one-event sequences (no emacs-style
Ctrl-X Ctrl-C, no shortcuts like <3>), for all types of events.
Key/Button Press/Release events can have modifiers.
The recognized modifiers are Shift, Control, Option and Command for Mac, and
Control, Alt, Shift, Meta/M for other platforms.

For all events which were handled by MultiCall, a new member is added to the
event instance passed to the binded functions - mc_type. This is one of the
event type constants defined in this module (such as MC_KEYPRESS).
For Key/Button events (which are handled by MultiCall and may receive
modifiers), another member is added - mc_state. This member gives the state
of the recognized modifiers, as a combination of the modifier constants
also defined in this module (for example, MC_SHIFT).
Using these members is absolutely portable.

The order by which events are called is defined by these rules:
1. A more-specific event will be called before a less-specific event.
2. A recently-binded event will be called before a previously-binded event,
   unless this conflicts with the first rule.
Each function will be called at most once for each event.
N	

darwinShiftControlOptionCommandAltMetaMcCs-g|]#}t|D]}||fqqS)
_modifiers).0numbernamer r '/usr/lib/python3.5/idlelib/MultiCall.py
<listcomp>7s	r&zapplication has been destroyedc@s@eZdZddZddZddZddZd	S)

_SimpleBindercCsJ||_dt|dd|_||_||_g|_d|_dS)N<r>)type_typessequencewidget
widgetinstbindedfuncs	handlerid)selfr*r-r.r r r%__init__Js				z_SimpleBinder.__init__cCsV|jsB|j|jdd}|jj|j|j||_|jj|dS)NcSsp||_i}xZtt|dddD]<}||}||kr,d||<||}|r,|Sq,WdS)NrTr3)mc_typerangelen)eventlr4	wascalledifuncrr r r%handlerTs	#

z#_SimpleBinder.bind.<locals>.handler)r0r/r*r-bindr.r,append)r1tripletr;r=r r r%r>Rs
	
z_SimpleBinder.bindcCsE|jj||jsA|jj|j|j|jd|_dS)N)r/remover-unbindr.r,r0)r1r@r;r r r%rBbs	z_SimpleBinder.unbindcCsq|jrmy#|jj|j|j|jWn>tjk
rl}zt|jdkrZWYdd}~XnXdS)Nr)	r0r-rBr.r,tkinterTclErrorAPPLICATION_GONEargs)r1er r r%__del__hs	z_SimpleBinder.__del__N)__name__
__module____qualname__r2r>rBrHr r r r%r'Isr'cs8g|].djfddttDqS)c3s1|]'\}}d|>@r|ddVqdS)rr-Nr )r"r:m)sr r%	<genexpr>ws	z<listcomp>.<genexpr>)join	enumerater!)r"r )rOr%r&ws	csodd}g}xV|D]Nttfdd|D}|jd|dd|j|qW|S)zFor each item of states return a list containing all combinations of
    that item with individual bits reset, sorted by the number of set bits.
    cSs6d}x)|r1t|d\}}||7}q	W|S)znumber of bits set in n base 2rr)divmod)nZnbZremr r r%nbitss
	zexpand_substates.<locals>.nbitsc3s|]}|@VqdS)Nr )r"x)stater r%rPsz#expand_substates.<locals>.<genexpr>keyreverseT)listsetsortr?)ZstatesrUZ	statelistZ	substatesr )rWr%expand_substates|s
%r]c@sLeZdZddZddZddZddZd	d
ZdS)_ComplexBindercCs%||||j|jdd}|S)NcSsdg|dd<||_||_i}d}xs|D]k}x[tt|dddD]=}	||	}
|
|kr[d||
<||	|}|r[Pq[W|r8Pq8Wg|dd<x|D]
}|qWg|dd<|r|SdS)NTrr3r3)r4mc_stater5r6)r7listsr4r_ishandlerrunningdoafterhandlerr9r<r8r:r;fr r r%r=s*		
#


z0_ComplexBinder.__create_handler.<locals>.handler)rarb)r1r`r4r_r=r r r%Z__create_handlers
z_ComplexBinder.__create_handlercs|_t|d_|_|_dddtDi_g_g_g_	xtD]}fddt
|D}j||t|}dt
|jd}jj|jjj||fqjWdS)NrcSsg|]}gqSr r )r"rOr r r%r&s	z+_ComplexBinder.__init__.<locals>.<listcomp>cs!g|]}jd|qS)N)r/)r"r:)r1r r%r&s	r(r))r*r+typenamer-r._statesr/
handleridsrarb_state_subsets_ComplexBinder__create_handler_state_codes_state_namesr?r>)r1r*r-r.rOr`r=seqr )r1r%r2s						
z_ComplexBinder.__init__csdjkrddtDjd<xtD]fddddfD}j|jt}dtjdf}jj|j	j
j||fq8Wfdd}js|nj
j|dS)NrcSsg|]}gqSr r )r"rOr r r%r&s	z'_ComplexBinder.bind.<locals>.<listcomp>cs2g|](}tD]}j||qqSr )rgr/)r"detailr:)rOr1r r%r&s	z	<%s%s-%s>cs jddjS)Nrr)r/r?r )r;r1r@r r%<lambda>sz%_ComplexBinder.bind.<locals>.<lambda>)r/rerhr*rirjrdrfr?r-r>r.rarb)r1r@r;r`r=rkdoitr )r;rOr1r@r%r>s

	
z_ComplexBinder.bindcs?fdd}js+|njj|dS)Ncs jddjS)Nrr)r/rAr )r;r1r@r r%rmsz'_ComplexBinder.unbind.<locals>.<lambda>)rarbr?)r1r@r;rnr )r;r1r@r%rBs	
z_ComplexBinder.unbindcCs|xu|jD]j\}}y|jj|j||Wq
tjk
rs}zt|jdkraWYdd}~Xq
Xq
WdS)Nr)rfr-rBr.rCrDrErF)r1rkidrGr r r%rHsz_ComplexBinder.__del__N)rIrJrKrhr2r>rBrHr r r r%r^s
r^KeyPressKey
KeyReleaseButtonPressButton
ButtonReleaseActivate	CirculateColormap	Configure
DeactivateDestroyEnterExposeFocusInFocusOutGravityLeaveMapMotion
MouseWheelPropertyReparentUnmap
VisibilitycCs-g|]#}t|D]}||fqqSr )r+)r"r#r$r r r%r&s	z^\w+$z^[1-5]$cCsY|s'|ddks'|ddkr+dS|ddjd}d}x7|r|dtkr|dt|d>O}|d=qMW|r|dtkrt|d}|d=ndSt|tkr|s|rdSd}nm|ddd
Dkrt}nt}|sd}n6t|dkrH|j|drH|d}ndS|||fS)a-Get a string which should describe an event sequence. If it is
    successfully parsed as one, return a tuple containing the state (as an int),
    the event type (as an index of _types), and the detail - None if none, or a
    string if there is one. If the parsing is unsuccessful, return None.
    rr(rr)NrMcSsg|]}t|qSr )_type_names)r"rOr r r%r&$s	z#_parse_sequence.<locals>.<listcomp>rprrr3r3)rprr)	split_modifier_namesr_binder_classesr'
_keysym_re
_button_rer6match)r,ZwordsZ	modifiersr*rlZtype_rer r r%_parse_sequences0'
			%
rcCsb|dr:dt|dt|ddd|ddSdt|dt|dddSdS)Nrr(rrrMr))rjr+)r@r r r%_triplet_to_sequence2s
0rcs>tkrtSGfddd}|t<|S)zReturn a MultiCall class which inherits its methods from the
    given widget class (for example, Tkinter.Text). This is used
    instead of a templating mechanism.
    cseZdZeejs$tfddZdddfddZdfddZ	fdd	Z
fd
dZdfdd
ZddZ
dS)z#MultiCallCreator.<locals>.MultiCallcsKj||i_fddtttD_dS)Ncs&g|]}t||qSr )r)r"r:)r1r-r r%r&Ks	z@MultiCallCreator.<locals>.MultiCall.__init__.<locals>.<listcomp>)r2_MultiCall__eventinfor5r6r+_MultiCall__binders)r1rFkwargs)r-)r1r%r2Es	z,MultiCallCreator.<locals>.MultiCall.__init__Ncs&t|tkrt|dkr|dddkr|dddkr||jkr|j|}|ddk	rx1|dD]%}|j|dj||dqW||d<|ddk	rxC|dD]!}|j|dj||qWn|gg|j|<j||||S)Nrz<<z>>rr)r*strr6rrrBr>)r1r,r;addZeir@)r-r r%r>Ns$,
#
"z(MultiCallCreator.<locals>.MultiCall.bindcst|tkrt|dkr|dddkr|dddkr||jkr|j|\}}|dk	rx)|D]!}|j|dj||qWd|j|d<j|||S)Nrz<<z>>rrr)r*rr6rrrB)r1r,Zfuncidr;tripletsr@)r-r r%rB`s$,
z*MultiCallCreator.<locals>.MultiCall.unbindcs||jkr"dgg|j|<|j|\}}xp|D]h}t|}|dkrpj|||q<|dk	r|j|dj|||j|q<WdS)Nr)rr	event_addrr>r?)r1virtual	sequencesr;rrkr@)r-r r%rks
z-MultiCallCreator.<locals>.MultiCall.event_addcs||jkrdS|j|\}}xp|D]h}t|}|dkraj|||q-|dk	r|j|dj|||j|q-WdS)Nr)rrevent_deleterrBrA)r1rrr;rrkr@)r-r r%r|s
z0MultiCallCreator.<locals>.MultiCall.event_deletecs]|dks||jkr+j||Sttt|j|dj||SdS)Nr)r
event_infotuplemapr)r1r)r-r r%rs
	z.MultiCallCreator.<locals>.MultiCall.event_infocSsx|jD]}|j|\}}|r
xn|D]f}y|j|dj||Wq0tjk
r}zt|jdkrWYdd}~Xq0Xq0Wq
WdS)Nrr)rrrBrCrDrErF)r1rr;rr@rGr r r%rHs
z+MultiCallCreator.<locals>.MultiCall.__del__)rIrJrK
issubclassrCZMiscAssertionErrorr2r>rBrrrrHr )r-r r%	MultiCallBs	r)_multicall_dict)r-rr )r-r%MultiCallCreator:s
[
rcs$tj}|jdttttjd|j\}}}}|jd||dft	tj
|jdgfdd}|d|d	|d
|d|d|d
|d|d|d|d|d|d|jdS)NzTest MultiCallz[x+]z+%d+%drcsTfdd}jd|d|jd|d|dd7<dS)NcstdS)N)print)r7)rkr r%r=sz-_multi_call.<locals>.bindseq.<locals>.handlerz
<<handler%d>>rr)r>r)rkrTr=)text)rkr%bindseqsz_multi_call.<locals>.bindseqz<Key>z
<Control-Key>z<Alt-Key-a>z<Control-Key-a>z<Alt-Control-Key-a>z<Key-b>z<Control-Button-1>z
<Button-2>z<Alt-Button-1>z
<FocusOut>z<Enter>z<Leave>)
rCZTktitlerZrintrerZgeometryrZTextZpackZmainloop)parentrootwidthZheightrVyrr )rr%_multi_calls(
3












r__main__)runrrr	 @rrrr)rrrrrrrrr)rrrrrprqrrrsrtrurvrwrxryrzr{r|r}r~rrrrrrrrrr)rrrrrrrrrrrrrrrrrrrrrrr)B__doc__sysrrCZMC_KEYPRESSZ
MC_KEYRELEASEZMC_BUTTONPRESSZMC_BUTTONRELEASEZMC_ACTIVATEZMC_CIRCULATEZMC_COLORMAPZMC_CONFIGUREZ
MC_DEACTIVATEZ
MC_DESTROYZMC_ENTERZ	MC_EXPOSEZ
MC_FOCUSINZMC_FOCUSOUTZ
MC_GRAVITYZMC_LEAVEZMC_MAPZ	MC_MOTIONZ
MC_MOUSEWHEELZMC_PROPERTYZMC_REPARENTZMC_UNMAPZ
MC_VISIBILITYZMC_SHIFTZ
MC_CONTROLZMC_ALTZMC_METAZ	MC_OPTIONZ
MC_COMMANDplatformr!Z_modifier_masksdictr5r6rrEr'rerjr]rgrirOr<r:r?r^r+rrcompilerrrrrrrrIZidlelib.idle_test.htestrr r r r%<module>s
-	

`"'g