£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
3
2a                 @   s   d dl Z d dlZd dlZd dlZd dlZd dlmZ d dlmZ d dl	Z	G dd dZ
dd ZdZd	ZdZejdZdZdZdZdd Zedkrd dlmZ eddd dS )    N)	calltip_w)HyperParserc               @   sX   e Zd ZdddZdd Zdd Zddd	Zd
d Zdd Zdd Z	dd Z
dd ZdS )CalltipNc             C   s0   |d krd | _ n|| _ |j| _d | _| j| _d S )N)editwintextactive_calltip_make_tk_calltip_window_calltip_window)selfr    r   ,/opt/alt/python36/lib64/python3.6/calltip.py__init__   s    zCalltip.__init__c             C   s
   d | _ d S )N)r	   )r
   r   r   r   close   s    zCalltip.closec             C   s   t j| jS )N)r   ZCalltipWindowr   )r
   r   r   r   r       s    zCalltip._make_tk_calltip_windowc             C   s   | j r| j j  d | _ d S )N)r   Zhidetip)r
   eventr   r   r   _remove_calltip_window$   s    
zCalltip._remove_calltip_windowc             C   s   | j d dS )NTbreak)open_calltip)r
   r   r   r   r   force_open_calltip_event)   s    
z Calltip.force_open_calltip_eventc             C   s   | j d d S )NF)r   )r
   r   r   r   r   try_open_calltip_event.   s    zCalltip.try_open_calltip_eventc             C   s   | j r| j jr| jd d S )NF)r   Z	tipwindowr   )r
   r   r   r   r   refresh_calltip_event5   s    zCalltip.refresh_calltip_eventc             C   s   | j   t| jd}|jd}|s&d S |j|d  |j }|sDd S | r\|jddkr\d S | j|}|snd S | j | _	| j	j
||d |d  d S )Ninsert(r      )r   r   r   Zget_surrounding_bracketsZ	set_indexZget_expressionfind	fetch_tipr	   r   Zshowtip)r
   Z	evalfuncsZhpZ	sur_paren
expressionargspecr   r   r   r   9   s     


zCalltip.open_calltipc             C   sR   y| j jjjj}W n tk
r*   d }Y nX |rB|jdd|fi S tt|S d S )NexecZget_the_calltip)	r   flistZpyshellZinterprpccltAttributeErrorZ
remotecallget_argspec
get_entity)r
   r   r    r   r   r   r   L   s    

zCalltip.fetch_tip)N)N)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r   r   r   r   r      s   
	
r   c             C   s>   | r:t jj }|jtj y
t| |S  tk
r8   d S X d S )N)sysmodulescopyupdate__main____dict__evalBaseException)r   	namespacer   r   r   r#   e   s    

r#   U          z(?<=\()\w*\,?\s*zSee source or doczinvalid method signaturez4
['/' marks preceding arguments as positional-only]
c       
      C   sr  d }}y
| j }W n tk
r&   |S X t|tjr8|n| }yttj|}W n8 tk
r } zt|}|j	t
rvt
S W Y d d }~X nX d|kr|t7 }t|tr|dkrt}t|tkrtj|ttdn|r|gng }t|tjr|j}nt| dd}|rdxZ|jdtd t D ]B}	|	j }	|	s(P t|	tkrJ|	d td  d }	|j|	 qW dj|}|snt}|S )	N /z())subsequent_indent__doc__
   z...)__call__r.   
isinstancetypes
MethodTypestrinspectZ	signature
ValueError
startswith_invalid_method_argument_positionaltype_default_callable_argspeclen	_MAX_COLStextwrapwrap_INDENTr7   getattrsplit
_MAX_LINESstripappendjoin)
obr   defaultZob_callZfoberrmsglinesdocliner   r   r   r"   |   s@    	

*
r"   r+   )mainzidlelib.idle_test.test_calltip   )	verbosityz    )r?   rer'   rH   r<   Zidlelibr   Zidlelib.hyperparserr   r+   r   r#   rG   rM   rJ   compileZ_first_paramrE   rB   rC   r"   r$   ZunittestrX   r   r   r   r   <module>   s(   S
4