£Á°è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>
B
    YI~d                 @   sz   d dl T G dd deZG dd deZG dd deZdd	 Zed
krvd dlmZ edddd d dl	m
Z
 e
e dS )    )*c               @   sD   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dS )TooltipBasec             C   s   || _ d | _d S )N)anchor_widget	tipwindow)selfr    r   4/opt/alt/python37/lib64/python3.7/idlelib/tooltip.py__init__   s    zTooltipBase.__init__c             C   s   |    d S )N)hidetip)r   r   r   r   __del__   s    zTooltipBase.__del__c             C   s|   | j r
d S t| j | _ }|d y|jdd|jdd W n tk
rR   Y nX |   | 	  | j 
  | j   d S )N   z!::tk::unsupported::MacWindowStyleZstylehelpZnoActivates)r   Toplevelr   Zwm_overrideredirectZtkZcallZ_wTclErrorposition_windowshowcontentsZupdate_idletasksZlift)r   twr   r   r   showtip   s    

zTooltipBase.showtipc             C   s@   |   \}}| j | }| j | }| jd||f  d S )Nz+%d+%d)get_positionr   Zwinfo_rootxZwinfo_rootyr   Zwm_geometry)r   xyZroot_xZroot_yr   r   r   r   /   s    zTooltipBase.position_windowc             C   s   d| j  d fS )N   r   )r   Zwinfo_height)r   r   r   r   r   6   s    	zTooltipBase.get_positionc             C   s   t d S )N)NotImplementedError)r   r   r   r   r   A   s    zTooltipBase.showcontentsc             C   s6   | j }d | _ |r2y|  W n tk
r0   Y nX d S )N)r   Zdestroyr   )r   r   r   r   r   r
   F   s    zTooltipBase.hidetipN)
__name__
__module____qualname__r	   r   r   r   r   r   r
   r   r   r   r   r   
   s   
r   c                   sZ   e Zd Zd fdd	Z fddZdddZdd	d
Zdd Zdd Z fddZ	  Z
S )OnHoverTooltipBase  c                sV   t t| | || _d | _| jd| j| _| jd| j	| _
| jd| j	| _d S )Nz<Enter>z<Leave>z<Button>)superr   r	   hover_delay	_after_idr   Zbind_show_event_id1_hide_event_id2_id3)r   r   r   )	__class__r   r   r	   U   s    
zOnHoverTooltipBase.__init__c                s\   y4| j d| j | j d| j | j d| j W n tk
rH   Y nX tt|   d S )Nz<Enter>z<Leave>z<Button>)	r   Zunbindr"   r$   r%   r   r   r   r   )r   )r&   r   r   r   g   s    zOnHoverTooltipBase.__del__Nc             C   s   | j r|   n|   d S )N)r   scheduler   )r   eventr   r   r   r!   p   s    
zOnHoverTooltipBase._show_eventc             C   s   |    d S )N)r
   )r   r(   r   r   r   r#   w   s    zOnHoverTooltipBase._hide_eventc             C   s    |    | j| j| j| _d S )N)
unscheduler   Zafterr   r   r    )r   r   r   r   r'   {   s    
zOnHoverTooltipBase.schedulec             C   s    | j }d | _ |r| j| d S )N)r    r   Zafter_cancel)r   Zafter_idr   r   r   r)      s    zOnHoverTooltipBase.unschedulec                s4   y|    W n tk
r    Y nX tt|   d S )N)r)   r   r   r   r
   )r   )r&   r   r   r
      s
    zOnHoverTooltipBase.hidetip)r   )N)N)r   r   r   r	   r   r!   r#   r'   r)   r
   __classcell__r   r   )r&   r   r   R   s   	

r   c                   s&   e Zd Zd fdd	Zdd Z  ZS )Hovertip  c                s   t t| j||d || _d S )N)r   )r   r+   r	   text)r   r   r-   r   )r&   r   r   r	      s    
zHovertip.__init__c             C   s$   t | j| jtdtdd}|  d S )Nz#ffffe0r   )r-   ZjustifyZ
backgroundZreliefZborderwidth)Labelr   r-   ZLEFTZSOLIDpack)r   labelr   r   r   r      s    zHovertip.showcontents)r,   )r   r   r   r	   r   r*   r   r   )r&   r   r+      s   r+   c             C   s   t | }|d tt|  ddd  \}}|d||d f  t|dd}|  t|dd}|  t	|d	d
d t|dd}|  t	|dd d d S )NzTest tooltip+r   z+%d+%d   zPlace your mouse over buttons)r-   z"Button 1 -- 1/2 second hover delayz!This is tooltip text for button1.i  )r   zButton 2 -- no hover delayz!This is tooltip
text for button2.)
r   titlemapintZgeometrysplitr.   r/   ZButtonr+   )parenttopr   r   r0   Zbutton1Zbutton2r   r   r   _tooltip   s    
 r9   __main__)mainzidlelib.idle_test.test_tooltip   F)	verbosityexit)runN)Ztkinterobjectr   r   r+   r9   r   Zunittestr;   Zidlelib.idle_test.htestr?   r   r   r   r   <module>   s   H?