python (3.11.7)

(root)/
lib/
python3.11/
idlelib/
__pycache__/
undo.cpython-311.opt-2.pyc

e+ddlZddlmZGddeZGddZGddeZGd	d
eZGddeZd
Ze	dkr'ddl
mZedddddlm
Z
e
edSdS)N)	DelegatorczeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
ddZdd
ZdZdZddZdZdZdS)
UndoDelegatoricVtj||dSN)r__init__
reset_undoselfs @/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/idlelib/undo.pyrzUndoDelegator.__init__s)4   cf|j?|d|d|dtj|||S|d|j|d|j|d|jdSdS)Nz<<undo>>z<<redo>>z<<dump-undo-state>>)delegateunbindrsetdelegatebind
undo_event
redo_event
dump_event)rrs  rrzUndoDelegator.setdelegates=$KK
###KK
###KK-...dH---IIj$/222IIj$/222II+T_===== r
cTddlm}||jd|jtd|jdtd|jdtd|jdtd|||j|jdd	S)
Nr)pprintzpointer: )endzsaved:z
can_merge:zget_saved():break)rundolistpointerprintsaved	can_merge	get_saved)reventrs   rrzUndoDelegator.dump_event(s!!!!!!t}]dl]+,,,
j$,C0000
h
,,,,
lDN4444
ndnn..///t}T\]]+,,,wr
chd|_d|_g|_d|_|ddSNr)	was_savedrr	undoblock	set_savedr
s rr	zUndoDelegator.reset_undo2s6
qr
ch|r
|j|_nd|_d|_|dS)Nr$F)rrrcheck_saved)rflags  rr(zUndoDelegator.set_saved9s;	DJJDJr
c"|j|jkSr)rrr
s rr zUndoDelegator.get_savedAszT\))r
Nc||_dSr)saved_change_hook)rhooks  rset_saved_change_hookz#UndoDelegator.set_saved_change_hookFs!%r
r$c|}||jkr$||_|jr|dSdSdSr)r r&r.)ris_saveds  rr*zUndoDelegator.check_savedKsZ>>##t~%%%DN%
)&&(((((&%
)
)r
cN|t|||dSr)addcmd
InsertCommand)rindexcharstagss    rinsertzUndoDelegator.insertRs&M%5566666r
cL|t||dSr)r4
DeleteCommandrindex1index2s   rdeletezUndoDelegator.deleteUs$M&&1122222r
ct|jdkrt|_|jdSNr)r'CommandSequence
bump_depthr
s rundo_block_startzUndoDelegator.undo_block_startcs6>Q,..DN!!#####r
c|jddkra|j}d|_t|dkrBt|dkr|d}||ddSdSdSr#)r'rClengetcmdr4rcmds  rundo_block_stopzUndoDelegator.undo_block_stophs>$$R((A--.CDN3xx!||s88q==**Q--CC#####.-|r
TcJ|r||j|jdkr|j|dS|jr7|jdkr,|j|jdz
}||rdS|g|j|jd<|j|jkrd|_|jdz|_t|j|j
kr1|jd=|jdz
|_|jdkr|jdz
|_d|_|dS)Nrr%r$T)dorr'appendrrrmergerrFmax_undor*)rrIexecutelastcmds    rr4zUndoDelegator.addcmdts%	"FF4=!!!>QN!!#&&&F>	dlQ..mDLN3G}}S!!
(+u
dlmm$:$$DJ|a't}
--
a <!+DLzQ!Z!^
r
c|jdkr|dS|j|jdz
}||j|jdz
|_d|_|dS)Nrrr%F)rbellrundorrr*rr!rIs   rrzUndoDelegator.undo_eventst<1IIKKK7mDL1,-|a'wr
c|jt|jkr|dS|j|j}||j|jdz|_d|_|dS)Nrr%F)rrFrrSredorrr*rUs   rrzUndoDelegator.redo_eventsy<3t}----IIKKK7mDL)|a'wr
r)T)__name__
__module____qualname__rOrrrr	r(r r.r0r&r*r9r?rDrJr4rrr
rrrsH	>	>	>***&&&I)))77773333$$$

$
$
$.								r
rcDeZdZdZd
dZdZdZdZdZdZ	dZ
d	ZdS)CommandNcbi|_i|_||_||_||_|r	||_dSdSr)marks_beforemarks_afterr=r>r7r8)rr=r>r7r8s     rrzCommand.__init__sD
	DIII		r
c|jj}|j|j|j|jf}|j
|dd}|t
|zS)Nr$)	__class__rXr=r>r7r8repr)rsts   r__repr__zCommand.__repr__sGN#
[$+tz49=9#2#A477{r
cdSrr[rtexts  rrLz
Command.dor
cdSrr[rhs  rrWzCommand.redorjr
cdSrr[rhs  rrTzCommand.undorjr
cdSrAr[rHs  rrNz
Command.mergesqr
ci}|D]&}|dkr|dkr||||<'|S)Nr9current)
mark_namesr6)rrimarksnames    r
save_markszCommand.save_markssPOO%%	/	/DxDI$5$5"jj..dr
cf|D]\}}|||dSr)itemsmark_set)rrirqrrr6s     r	set_markszCommand.set_markss> ;;==	'	'KD%MM$&&&&	'	'r
r)rXrYrZr8rrfrLrWrTrNrsrwr[r
rr]r]sD








'''''r
r]cXeZdZd	dZdZdZdZdZej	ej
zdzZdZdS)
r5NcBt||d||dSrr]r)rr=r7r8s    rrzInsertCommand.__init__s$vtUD99999r
c|||_||j|_||jddr|d|_||j|j|j|d|jt|jfz|_	|||_
dS)N>end-1cz%s+%dc)rsr_r6r=comparer9r7r8rFr>r`rhs  rrLzInsertCommand.dos OOD11jj--<<S(33	/**X..DKDKTY777jjT[#dj//,J!JKK??400r
c|d|j||j|j|j|||j|ddSNr9)rvr=r9r7r8rwr`seerhs  rrWzInsertCommand.redosc

h,,,DKTY777tT-...r
c|d|j||j|j|||j|ddSr)rvr=r?r>rwr_rrhs  rrTzInsertCommand.undos_

h,,,DK---tT.///r
cl|j|jurdS|j|jkrdS|j|jkrdSt	|jdkrdS|jr>||jd||jkrdS|j|_|j|jz|_dS)NFr%r$T)rbr>r=r8rFr7classifyrHs  rrNzInsertCommand.merges>..5;#*$$59  5sy>>Q5:	==B((DMM#),D,DDD5jZ#)+
tr
_c,||jvrdS|dkrdSdS)Nalphanumeric
newlinepunctuation)r)rcs  rrzInsertCommand.classifys(!!!!>999}r
r)
rXrYrZrrLrWrTrNstring
ascii_lettersdigitsrrr[r
rr5r5s::::111 '&-7#=Lr
r5c(eZdZddZdZdZdZdS)r;NcBt|||dddSrrzr<s   rrzDeleteCommand.__init__s$vvtT:::::r
c4|||_||j|_|jr ||j|_n"||jdz|_||jddr|d|_||j|j|_||j|j|||_	dS)Nz +1cr|r})
rsr_r6r=r>r~getr7r?r`rhs  rrLzDeleteCommand.dos OOD11jj--;	;**T[11DKK**T[6%9::DK<<S(33	/**X..DKXXdk4;77
DK---??400r
c|d|j||j|j|||j|ddSr)rvr=r?r>rwr`rrhs  rrWzDeleteCommand.redos_

h,,,DK---tT-...r
c|d|j||j|j|||j|ddSr)rvr=r9r7rwr_rrhs  rrTzDeleteCommand.undo$s_

h,,,DK,,,tT.///r
r)rXrYrZrrLrWrTr[r
rr;r;sU;;;;111r
r;c@eZdZdZdZdZdZdZdZdZ	dd	Z
d
S)rBc"g|_d|_dSrA)cmdsdepthr
s rrzCommandSequence.__init__0s	


r
c|jj}g}|jD]}|d||dzd|zdzS)Nz    z(
z,
z
))rbrXrrMjoin)rrdstrsrIs    rrfzCommandSequence.__repr__4s]N#9	(	(CKKs''''5y5::d+++e33r
c*t|jSr)rFrr
s r__len__zCommandSequence.__len__;s49~~r
c:|j|dSr)rrMrHs  rrMzCommandSequence.append>s	r
c|j|Sr)r)ris  rrGzCommandSequence.getcmdAsy|r
cD|jD]}||dSr)rrW)rrirIs   rrWzCommandSequence.redoDs.9		CHHTNNNN		r
c|jdd}||D]}||dSr)rreverserT)rrirrIs    rrTzCommandSequence.undoHsHy|		CHHTNNNN		r
r%c.|j|z|_|jSr)r)rincrs  rrCzCommandSequence.bump_depthNsZ$&
zr
N)r%)rXrYrZrrfrrMrGrWrTrCr[r
rrBrB,s444r
rBc
ddlm}m}m}ddlm}||}|dtt|	
ddd\}}|	d||dzfz||d	
}||||}	t
|	
||d
fd
}
|
d||d
fd
}|d||d
fd
}|ddS)Nr)ToplevelTextButton)
PercolatorzTest UndoDelegator+r%z+%d+%d
)heightUndoc.dSr)rdsr<lambda>z!_undo_delegator.<locals>.<lambda>b1<<3E3Er
)ricommandleft)sideRedoc.dSr)rrsrrz!_undo_delegator.<locals>.<lambda>drr
Dumpc.dSr)rrsrrz!_undo_delegator.<locals>.<lambda>frr
)tkinterrrridlelib.percolatorrtitlemapintgeometrysplitpack	focus_setrinsertfilter)parentrrrrtopxyriprTrWdumprs             @r_undo_delegatorrSs..........------
(6

CII"###sFOO%%++C00455DAqLLQCL()))4BDIIKKKNN
4AANN16#F,E,E,E,EFFFDII6I6#F,E,E,E,EFFFDII6I6#F,E,E,E,EFFFDII6Ir
__main__)mainzidlelib.idle_test.test_undoF)	verbosityexit)run)ridlelib.delegatorrrr]r5r;rBrrXunittestridlelib.idle_test.htestrr[r
r<module>rss



''''''$JJJJJIJJJZ*'*'*'*'*'*'*'*'Z66666G666r     G   H$$$$$g$$$N.zD	&!%@@@@++++++Cr