Viewing File: /opt/alt/python35/lib64/python3.5/idlelib/__pycache__/SearchEngine.cpython-35.opt-2.pyc



]=@sddlZddlmZmZmZddljZddZGdddZ	ddZ
d	d
ZddZe
d
krddlZejddddddS)N)	StringVar
BooleanVarTclErrorcCs%t|dst||_|jS)N
_searchengine)hasattrSearchEnginer)rootr	1/opt/alt/python35/lib64/python3.5/SearchEngine.pygetsrc@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
d"ddZddddZdddZdd d!ZdS)#rcCsy||_t|d|_t|d|_t|d|_t|d|_t|d|_t|d|_dS)NFT)	rrpatvarrrevarcasevarwordvarwrapvarbackvar)selfrr	r	r
__init__s	zSearchEngine.__init__cCs
|jjS)N)r
r)rr	r	r
getpat#szSearchEngine.getpatcCs|jj|dS)N)r
set)rpatr	r	r
setpat&szSearchEngine.setpatcCs
|jjS)N)rr)rr	r	r
isre)szSearchEngine.isrecCs
|jjS)N)rr)rr	r	r
iscase,szSearchEngine.iscasecCs
|jjS)N)rr)rr	r	r
isword/szSearchEngine.iswordcCs
|jjS)N)rr)rr	r	r
iswrap2szSearchEngine.iswrapcCs
|jjS)N)rr)rr	r	r
isback5szSearchEngine.isbackcCs,|jrtj|}|j|dS)N)rreescaper)rrr	r	r
setcookedpat:szSearchEngine.setcookedpatcCsA|j}|js'tj|}|jr=d|}|S)Nz\b%s\b)rrrrr)rrr	r	r
getcookedpatAs
zSearchEngine.getcookedpatcCs|j}|s&|j|ddS|j}d}|jsQ|tjB}ytj||}Wnttjk
r}zQ|j}|d}t	|dkr|dnd}|j|||dSWYdd}~XnX|S)NzEmpty regular expressionr)
rreport_errorr!rr
IGNORECASEcompileerrorargslen)rrflagsprogZwhatr)msgcolr	r	r
getprogIs"
	
"zSearchEngine.getprogr#cCsgdt|}|r*|dt|}|dkrJ|dt|}tjd|d|jdS)NzError: z

Pattern: rz	
Offset: zRegular expression errorZmaster)strtkMessageBoxZ	showerrorr)rrr-r.r	r	r
r%]s	zSearchEngine.report_errorNrcCs|s|j}|sdS|jj}t|\}}|jr|rX|}n|}t|\}}	|j||||	||}
nE|r|}n|}t|\}}	|j||||	||}
|
S)N)r/rr
get_selectionrget_line_colsearch_backwardsearch_forward)rtextr,okwrapfirstlaststartliner.resr	r	r
search_textgs$	!	zSearchEngine.search_textcCsd}|}|jd|d|d}	x|	r|j|	dd|}
|
rw|sm|
j|krw||
fS|d}|r||krPd}d}|jd|d|d}	|	r-|r-d}d}d}|jdd}	q-WdS)Nrz%d.0r#z1.0z2.0r$)rsearchend)rr6r,r<r.r8r7wrapped	startlinecharsmr	r	r
r5s(	


zSearchEngine.search_forwardcCsd}|}|jd|d|d}	xt||	dd|}
|
rq|sg|
j|krq||
fS|d}|r||krPd}|dkr|sPd}d}|jd}tt|jd\}}|jd|d|d}	t|	d}q-WdS)Nrz%d.0r#zend-1c.r$)rsearch_reverser;indexmapintsplitr*)rr6r,r<r.r8r7rArBrCrDposr	r	r
r4s,

zSearchEngine.search_backwardr$)__name__
__module____qualname__rrrrrrrrr r!r/r%r>r5r4r	r	r	r
rs
(rcCs|j|}|sdSd}|j\}}xc||kr||kr|}||krh|d}|j||}|sP|j\}}q4W|S)Nr#)r?span)r,rCr.rDfoundijr	r	r
rFs
rFcCsly"|jd}|jd}Wntk
r@d}}YnX|sV|jd}|sb|}||fS)Nz	sel.firstzsel.lastinsert)rGr)r6r9r:r	r	r
r2s
r2cCs(tt|jd\}}||fS)NrE)rHrIrJ)rGr<r.r	r	r
r3sr3__main__z#idlelib.idle_test.test_searchengine	verbosityr"exitF)rtkinterrrrZtkinter.messageboxZ
messageboxr1rrrFr2r3rLZunittestmainr	r	r	r
<module>s
Back to Directory File Manager