JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr Yfe @sddlTGdddZGdddeZGdddeZdd Zed kr{dd lmZeed S) )*c@syeZdZddZdddZdddZdd Zd d Zd d ZdddZ ddZ dS) ToolTipBasecCs||_d|_d|_d|_|_|jjd|j|_|jjd|j|_ |jjd|j|_ dS)Nrzzz ) button tipwindowidxyZbindenterZ_id1leaveZ_id2Z_id3)selfrr 4/opt/alt/python35/lib64/python3.5/idlelib/ToolTip.py__init__ s   zToolTipBase.__init__NcCs|jdS)N)schedule)r eventr r r r szToolTipBase.entercCs|j|jdS)N) unschedulehidetip)r rr r r r s zToolTipBase.leavecCs)|j|jjd|j|_dS)Ni)rraftershowtipr)r r r r rs zToolTipBase.schedulecCs,|j}d|_|r(|jj|dS)N)rrZ after_cancel)r rr r r rs  zToolTipBase.unschedulecCs|jr dS|jjd}|jj|jjd}t|j|_}|jd|jd||f|jdS)Nz+%d+%d) rrZ winfo_rootxZ winfo_rootyZ winfo_heightZToplevelZwm_overrideredirectZ wm_geometry showcontents)r rrtwr r r r$s   zToolTipBase.showtipzYour text herec Cs;t|jd|dtdddtdd}|jdS)NtextZjustify backgroundz#ffffe0ZreliefZ borderwidthr)LabelrZLEFTZSOLIDpack)r rlabelr r r r2szToolTipBase.showcontentscCs&|j}d|_|r"|jdS)N)rZdestroy)r rr r r r8s  zToolTipBase.hidetip) __name__ __module__ __qualname__rr r rrrrrr r r r rs     rc@s(eZdZddZddZdS)ToolTipcCstj||||_dS)N)rrr)r rrr r r r?szToolTip.__init__cCstj||jdS)N)rrr)r r r r rBszToolTip.showcontentsN)rrr rrr r r r r!>s  r!c@s(eZdZddZddZdS)ListboxToolTipcCstj||||_dS)N)rritems)r rr#r r r rFszListboxToolTip.__init__cCsGt|jdd}|jx!|jD]}|jt|q)WdS)Nrz#ffffe0)ZListboxrrr#insertZEND)r Zlistboxitemr r r rIs zListboxToolTip.showcontentsN)rrr rrr r r r r"Es  r"c Cst}|jdttttjd|j\}}}}|jd||dft|dd}|j t |dd}t |dd}|j |j t |d t |d d d d g|j dS)Nz Test tooltipz[x+]z+%d+%drzPlace your mouse over buttonszButton 1zButton 2z!This is tooltip text for button1.zThis isz multiple linez tooltip textz for button2)ZTktitlelistmapintresplitZgeometryrrZButtonr!r"Zmainloop) parentrootwidthZheightrrrZbutton1Zbutton2r r r _tooltipOs  3      r0__main__)runN)Ztkinterrr!r"r0rZidlelib.idle_test.htestr2r r r r s 6