File: //usr/lib64/python2.7/idlelib/CallTipWindow.pyc
�
{fc           @   s�   d  Z  d d l m Z m Z m Z m Z m Z d Z d Z d Z	 d Z
 d	 Z d
 Z d d d �  �  YZ
 d
 �  Z e d k r� d d l m Z e e � n  d S(   s�   A CallTip window class for Tkinter/IDLE.
After ToolTip.py, which uses ideas gleaned from PySol
Used by the CallTips IDLE extension.
i����(   t   Toplevelt   Labelt   LEFTt   SOLIDt   TclErrors   <<calltipwindow-hide>>s   <Key-Escape>s
   <FocusOut>s   <<calltipwindow-checkhide>>s   <KeyRelease>s   <ButtonRelease>id   t   calltipwindowregion_rightt   CallTipc           B   sJ   e  Z d  �  Z d �  Z d �  Z d d � Z d �  Z d �  Z d �  Z	 RS(   c         C   sO   | |  _  d  |  _ |  _ d  |  _ |  _ d  |  _ d  |  _ |  _ d  |  _	 d  S(   N(
   t   widgett   Nonet	   tipwindowt   labelt	   parenlinet   parencolt   lastlinet   hideidt   checkhideidt   checkhide_after_id(   t   selfR   (    (    s-   /usr/lib64/python2.7/idlelib/CallTipWindow.pyt   __init__   s    		c         C   s(  t  |  j j d � j d � d � } | |  j k r8 d S| |  _ |  j j d � | |  j k r� |  j j d |  j |  j f � } n |  j j d | � } | s� t	 |  j j d � � } d | d <d | d <n  | d |  j j
 �  d } | d | d	 |  j j �  } |  j j
 d
 | | f � d S(   s;   Check if needs to reposition the window, and if so - do it.t   insertt   .i    Ns   %d.%ds   %d.0i   i   i   s   +%d+%d(   t   intR   t   indext   splitR
   t   seeR   t   bboxR   t   listt   winfo_rootxt   winfo_rootyR	   t   wm_geometry(   R   t   curlinet   boxt   xt   y(    (    s-   /usr/lib64/python2.7/idlelib/CallTipWindow.pyt   position_window   s     %	
c         C   s�  | |  _  |  j s |  j  r  d S|  j j t | � t t |  j j | � j d � � \ |  _	 |  _
 t |  j � |  _ } |  j �  | j
 d � y# | j j d d | j d d � Wn t k
 r� n Xt | d |  j  d	 t d
 d d t d
 d d |  j d �|  _ |  j j �  | j �  | j �  |  j j t |  j � |  _ x! t D] } |  j j t | � qGW|  j j t  |  j � |  j j t! |  j"