python (3.11.7)

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

erOz	ddlZddlZddlZddlZddlmZddlmZddl	m
Z
ddlmZdZ
dZdZd	Zejd
ZGddZGd
de
ZGddeZGdde
ZGddeZdZedkr'ddlmZedddddlmZeedSdS)N)Font)idleConf)	Delegator)macosxcn	||}|rtt|ndSN)indexintfloat)textr	
text_indexs   C/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/idlelib/sidebar.py
get_linenors6AE""J%/93uZ  !!!T9c$	t|dS)Nzend-1c)rrs rget_end_linenumberrsAdH%%%rcV	||d|dd}|r|dndS)Nz
 linestartz lineenddisplaylinesr)count)rr	ress   rget_displaylinesrsGJ
**)))'''#%%C3q66arc
	|}|dkr|}n-|dkr|}ntd|t	t|jj|d|d|dg}t	t|jj|d|d|dg}||fS)NpackgridzUnsupported geometry manager: padxborderpady)	
winfo_manager	pack_info	grid_info
ValueErrorsummaptkgetintcget)widgetmanagerinforrs     rget_widget_paddingr+!sE""$$G&!!	F		!!C'CCDDDs69#VFH&D
s69#VFH&D
:rc#K|tj	dV|tjdS#|tjwxYw)Nstate)	configurer%NORMALDISABLEDrs rtemp_enable_text_widgetr2;sbNNN###*
R[)))))R[))))sA

"A,c^eZdZ	dZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdS)BaseSideBarc||_|j|_|j|_d|_||_|||	dSNF)
editwin
text_frameparentris_showninit_widgetsmain_widgetbind_eventsupdate_font
update_colors)selfr7s  r__init__zBaseSideBar.__init__Fss(L	
,,..rc	trNotImplementedErrorr@s rr;zBaseSideBar.init_widgetsTsJ!!rc	trrCrEs rr>zBaseSideBar.update_fontXsI!!rc	trrCrEs rr?zBaseSideBar.update_colors\sK!!rc	trrCrEs rrzBaseSideBar.grid`s:!!rcN|js|d|_dSdS)NT)r:rrEs rshow_sidebarzBaseSideBar.show_sidebards.}	!IIKKK DMMM	!	!rcX|jr"|jd|_dSdSr6)r:r<grid_forgetrEs rhide_sidebarzBaseSideBar.hide_sidebaris6=	"((***!DMMM	"	"rc	trrCr@argskwargss   r
yscroll_eventzBaseSideBar.yscroll_eventnsF!!rcF	|jjj||j|i|Sr)r7vbarsetrRrOs   rredirect_yscroll_eventz"BaseSideBar.redirect_yscroll_eventrs6		t$$!t!426222rc:	|jdSNbreak)r	focus_setr@events  rredirect_focusin_eventz"BaseSideBar.redirect_focusin_eventzsF	wrc~	|j|j|d|jdS)NrxyrY)rrZevent_generatera)r@r\
event_names   rredirect_mousebutton_eventz&BaseSideBar.redirect_mousebutton_events=J		  qEG <<<wrcX	|jdd|j|jdS)N<MouseWheel>r)r`radeltarY)rrbrargr[s  rredirect_mousewheel_eventz%BaseSideBar.redirect_mousewheel_events9E	  #$u{	!	D	D	Dwrc	

jjd<jdjjdjfd}dD]C}d|dd|dd	|d
fD]}|||d|dd
|dfD]}||d|dDddd	fd

fd}jd|fd}jd|
fd}jd|	

fd
	
fd}jd|	fd}jd|dS)Nyscrollcommandz	<FocusIn>rfcttjj|}j||dS)N)rc)	functoolspartialrdr<bind)rctarget_event_namehandlerr@s   rbind_mouse_eventz1BaseSideBar.bind_events.<locals>.bind_mouse_eventsD'(G3DFFFG!!*g66666r)z<Button->z<ButtonRelease-z<Bz-Motion>)roz<Double-Button-z<Triple-Button-c6	tjd|}t|g\}}jdddjd|d|dzdjd||kr|n|dzddS)N@0,sel1.0endz.0insert)rrsorted
tag_removetag_addmark_set)y_coordlinenoabr@
start_lines    r%drag_update_selection_and_insert_markzFBaseSideBar.bind_events.<locals>.drag_update_selection_and_insert_marksH	???;;F:v.//DAqI  u555IeXXX!A#zzz:::Ix,2aKK&&VaZKKK
M
M
M
M
Mrcttjd|j|j|jdS)Nrx)r
rrr	ra)r\rlast_yr@rs rb1_mousedown_handlerz5BaseSideBar.bind_events.<locals>.b1_mousedown_handlersPU49?????#C#CDDEEJWF11%':::::rz
<Button-1>cTddjdd|jdS)N<ButtonRelease-1>rr_)rrbra)r\rr@rs rb1_mouseup_handlerz3BaseSideBar.bind_events.<locals>.b1_mouseup_handlers5
JFI$$%8A$IIIIIrrc>dS|j|jdSr)ra)r\rrs rb1_drag_handlerz0BaseSideBar.bind_events.<locals>.b1_drag_handlers-~WF11%':::::rz<B1-Motion>c	}|jddS|dkr*jd|zd|n`|jkrCjd|zjz
d|jddS)Nrpixelsr|2)r<after_cancelryview_scrollwinfo_heightafter)raauto_scrolling_after_idrrr@text_auto_scrolls rrz1BaseSideBar.bind_events.<locals>.text_auto_scrollsHAy --.EFFF*.'Q	&&rAvx88855a8888T%224444	&&q1ut/?/L/L/N/N'N'/11155a888 &&r+;<<
$##rcT$|jjddSdS)Nr)rar<r)r\rrr@rs rb1_leave_handlerz1BaseSideBar.bind_events.<locals>.b1_leave_handlers<'.$**1.>??(''/.rz
<B1-Leave>cHjddSdSr)r<r)r\rr@s rb1_enter_handlerz1BaseSideBar.bind_events.<locals>.b1_enter_handlers7'2 --.EFFF*.'''32rz
<B1-Enter>)rVrr<rnr]rh)r@rqbuttonrcrrrrrrrrrrs`        @@@@@rr=zBaseSideBar.bind_eventss&*&A	"#	
k4+FGGG	
nd.LMMM	7	7	7	7	7
#
	I
	IF3&333::::4F444!
K
K
! zJJJJJ ;:::::::!
I
I
! 3Gf3G3G3GIIIII
I
#'	M	M	M	M	M	M	;	;	;	;	;	;	;	;	
l,@AAA	J	J	J	J	J	J	J	
13EFFF	;	;	;	;	;	;	
m_===	=	=	=	=	=	=	=	=	=&	@	@	@	@	@	@	@	@	
l,<===	/	/	/	/	/	/	
l,<=====rN)__name__
__module____qualname__rAr;r>r?rrJrMrRrVr]rdrhr=rrr4r4Ds/""""""""""""!!!
"""
"""333
|>|>|>|>|>rr4c&eZdZ	dZddZddZdS)EndLineDelegatorc<tj|||_dSr)rrAchanged_callback)r@rs  rrAzEndLineDelegator.__init__s!4    0rNc|j||||t|jdSr)delegater}rr)r@r	charstagss    rr}zEndLineDelegator.insertsA
UE40000??@@@@@rc|j|||t|jdSr)rdeleterr)r@index1index2s   rrzEndLineDelegator.deletes?
VV,,,0??@@@@@rrrrrrAr}rrrrrr
sZ111AAAAAAAAAArrcDeZdZ	fdZdZdZdZdZdZdZ	xZ
S)LineNumbersct|t|j}|jj||jjdS)Nr)superrArupdate_sidebar_textr7perinsertfilterafterundo)r@r7end_line_delegator	__class__s   rrAzLineNumbers.__init__sj
!!!-d.FGG	
**+=151B	+	D	D	D	D	Drc	t|j\}}tj|jdtjd|dd|_|jtjd|_	t|jd|_t|j5|j
ddd	dddn#1swxYwY|jd
d
|jd	tjt!|j}|||jS)
Nr|rrr)widthwraprrborderwidthhighlightthicknessr-rr}1
linenumberF)	takefocusexportselection)justify)r+rr%Textr9NONEsidebar_textconfigr1prev_endtype_sidebar_width_typer2r}
tag_configRIGHTrr)r@_padxrr{s    rr;zLineNumbers.init_widgets'sz(33tGDKqrw)*01aIII	
  r{ 333
#'(9'(B#C#C 
$T%6
7
7	B	B$$XsLAAA	B	B	B	B	B	B	B	B	B	B	B	B	B	B	B  5% HHH$$\28$DDD ++  %%%  s&CCCcT|jddtjdS)Nr|rrowcolumnsticky)rrr%NSEWrEs rrzLineNumbers.grid:s(1Qrw?????rcPtj|jdd}||jd<dS)NmainEditorWindowfont)rGetFontrr)r@rs  rr>zLineNumbers.update_font=s+	6>BB$(&!!!rc	tjtjd}|d}|d}|j|||||dS)Nr
foreground
background)fgbgselectforegroundselectbackgroundinactiveselectbackground)rGetHighlightCurrentThemerr)r@colorsrrs    rr?zLineNumbers.update_colorsAskK&x'<'>'>MML)
L)
  j'*%/	!	
	
	
	
	
rc	||jkrdStt|tt|jz
}|rItt	|jd}||z}|||jd<t|j5||jkrrdtj
dgttt|jdz|dz}|j
d|dn!|j|dzdddddn#1swxYwY||_dS)Nr
r|zend -1crz.0 -1c)rlenstrr
rrrr2join	itertoolschainr$ranger}r)r@r{width_difference	cur_width	new_widthnew_texts      rrzLineNumbers.update_sidebar_textLs	9
$-Fs3xx==3s4=/A/A+B+BB	ME$"3G"<==>>I!$44I)-)A)A))L)LDg&
$T%6
7
7	F	FT]""99Y_DU4=1#4cAg>>??&&!((X|LLLL!((CE)9)9)99EEE	F	F	F	F	F	F	F	F	F	F	F	F	F	F	F


s,BEEEcF|j|ddS)NrrY)ryview_movetorOs   rrRzLineNumbers.yscroll_eventgs"&&tAw///wr)rrrrAr;rr>r?rrR
__classcell__rs@rrrs2DDDDD!!!&@@@)))	
	
	
6rrc$eZdZdZddZddZdS) WrappedLineHeightChangeDelegatorc>	tj|||_dSr)rrAcallback)r@rs  rrAz)WrappedLineHeightChangeDelegator.__init__ms%	
	4    


rNcd|v}|rt||}|j||||rt||}||krdS|dS)Nr)rrr}r)r@r	rris_single_linebefore_displaylinesafter_displayliness       rr}z'WrappedLineHeightChangeDelegator.insertvsyU*	@"24"?"?
UE4000	!1$!>!>!%888

rc||dz}t||t||k}|rt||}|j|||rt||}||krdS|dS)Nz+1c)rrrrr)r@rrrrrs      rrz'WrappedLineHeightChangeDelegator.deletes>e^F#D&11Zf5M5MM	A"24"@"@
VV,,,	!1$!?!?!%888

rrrrrrrrlsK!!!rrcZeZdZ	fdZdZfdZdZdZdZdZ	dZ
d	Zd
ZxZ
S)ShellSidebarcd|_i|_t|t	|j}|jjj}|j	|j
ur7|j	|jjjur|j	}|j	|jjju|jj||d|_
dS)NrT)canvasline_promptsrrArchange_callbackr7rtoprrbottomrr:)r@r7change_delegatordrs    rrAzShellSidebar.__init__s
!!!
-T-ABB	
L :TY&&*DL$4$;;;J*DL$4$;;;**+;1*EEE


rctj|jdddd|_|||jS)NrF)rrrr)r%Canvasr9rupdate_sidebarrrEs rr;zShellSidebar.init_widgetssQi2,-!*/111	
		{rct|jt	jrdnd|jdS)Nz
<Button-2>z
<Button-3>)rr=r<rnrisAquaTkcontext_menu_event)r@rs rr=zShellSidebar.bind_eventssX
"O--?LL<#	
	
	
	
	
rcltjjd}tjdd}fd}|d|d|rdnd	
|d|d|rdnd	
||j|j	d
S)Nr)tearoffryrzcfdS)Nc8jSr)rrb	eventnamer@sr<lambda>z@ShellSidebar.context_menu_event.<locals>.mkcmd.<locals>.<lambda>s4933I>>rrrs`rmkcmdz.ShellSidebar.context_menu_event.<locals>.mkcmds>>>>>>rCopyz<<copy>>normaldisabled)labelcommandr.zCopy with promptsz<<copy-with-prompts>>rY)
r%Menur<boolr
tag_nextrangeadd_commandtk_popupx_rooty_root)r@r\rmenu
has_selectionrs`    rrzShellSidebar.context_menu_events(!444TY44UEBBCC
	?	?	?	?	?
"'%
"3"3,9 Iz		K	K	K	 3"'%(?"@"@,9 Iz		K	K	K	u|U\222wrcX|jddtjdddS)Nr|rrr)rrrrr)rrr%rrEs rrzShellSidebar.grids+QqqqIIIIIrc@|jr|dSdSr)r:rrEs rrzShellSidebar.change_callbacks.=	"!!!!!	"	"rc	|j}|j}|j}ix}|_|t
j|d}|ddddkr||d}|	|x}|d}||d}d|vrdnd	|vrd
nd}	|	rJ|
d|t
j|	|j|j
d
t||}
|	||
<||d}|	|x}dSdS)Nz@0,0.r|0z+1line linestartz linestart -1cconsolez>>>stdinz...rrr)anchorrrfillz+1line)r	tag_namesrrrr%ALLr	split	dlineinfocreate_textNWrrr)r@r
text_tagnamesrrr	lineinforaprev_newline_tagnamespromptrs           rrzShellSidebar.update_sidebars{y
+--t(

bf

6"";;sAq!S((JJ%999::E>>%000x=A$1MU2J2J2J$K$K!"&;;; $999


.""1aF(,	A#HHH#D%00'-V$JJ%///00E >>%000x=====rc0	|dSrX)rrOs   rrRzShellSidebar.yscroll_events 		
wrc	tj|jdd}t|j|t	fddD}|j|dzdz||_|dS)	Nrr)rc3BK|]}|VdSr)measure).0chartk_fonts  r	<genexpr>z+ShellSidebar.update_font.<locals>.<genexpr>s/FF4..FFFFFFr)rvr)rsrt)r)	rrrrmaxrr/rr)r@r
char_widthr?s   @rr>zShellSidebar.update_fontsI	6>BBtyt,,,FFFF:FFFFF
JNQ$6777	rc0	tjtjd}tjtjd}|d}|d}||f|_|j||dS)Nrr+rr)r)rrrrrr/r)r@linenumbers_colors
prompt_colorsrrs     rr?zShellSidebar.update_colorssK%283H3J3JLYY -h.C.E.EyQQ
"<0
'5
!:.444r)rrrrAr;r=rrrrrRr>r?rrs@rrrs:$




JJJ"""1114rrc
ddlm}tj|}tj|}|tjtjd|dd|	ddtj|dd}tj|d	d
tj
|}|ddtj||}tj||_t%|}||d
ddt-ddDdS)Nr)
Dummy_editwinT)sider.expandr|)weightrrP)rheightrrrrzrc3 K|]	}d|zV
dS)rNr)r=is  rr@z,_sidebar_number_scrolling.<locals>.<genexpr>s& > >1Q > > > > > >re)idlelib.idle_test.test_sidebarrGr%ToplevelFramerLEFTBOTHrowconfigurecolumnconfigurerrrrrr	ScrollbarrTrrJr}rr)r9rGrr8rrr7linenumberss        r_sidebar_number_scrollingrZsD<<<<<<
+f

C#JOOrwtO<<<Aa(((q+++C88D
7:RtLLLDII!AbgI...mD!!G<
++GLg&&KKKtyy > >a

 > > >>>?????r__main__)rzidlelib.idle_test.test_sidebarrrF)	verbosityexit)run)
contextlibrlrtkinterr%tkinter.fontridlelib.configridlelib.delegatorridlelibrrrrr+contextmanagerr2r4rrrrrZrunittestridlelib.idle_test.htestr^rrr<module>rhsM######'''''':::&&&
   4***C>C>C>C>C>C>C>C>LAAAAAyAAA$MMMMM+MMM`&&&&&y&&&Rmmmmm;mmm`@@@,zD	)QUCCCC++++++C!"""""r