a  zeq@srddlTddlmZmZddlmZGdddZddZedkrndd l m Z e d d d dd l m Z e edS))*)Frame Scrollbar)macosxc@seZdZdZddZddZddZdd Zd d Zd d Z ddZ dZ ddZ ddZ ddZddZddZddZddZdd ZdS)! ScrolledListz(None)cKs||_t||_}|jjdddt|dd|_}|jjdddt|d d d |_}|rh|||jddd |j |d <|j |d<| d|j | d|j tr| d|j| d|jn| d|j| d|j| d|j|dS)NZboth)fillexpandvbar)namerighty)ZsiderrZwhite)ZexportselectionZ background)r rZcommandZyscrollcommandzzzzzzz )masterrframepackrr ZListboxlistboxZ configureZyviewsetbind click_eventdouble_click_eventrZisAquaTk popup_eventup_event down_eventclear)selfroptionsrr rrH/opt/bitninja-python-dojo/embedded/lib/python3.9/idlelib/scrolledlist.py__init__ s,    zScrolledList.__init__cCs|jdSN)rZdestroyrrrrclose'szScrolledList.closecCs(|jddd|_|jd|jdS)Nrendr)rdeleteemptyinsertdefaultr rrrr*szScrolledList.clearcCs0|jr|jddd|_|jdt|dSNrr")r$rr#r%str)ritemrrrappend/szScrolledList.appendcCs |j|Sr)rgetrindexrrrr+5szScrolledList.getcCs<|jd|j|jf|jd}||||dSNz@%d,%dactivebreak)ractivatexr r-select on_selectreventr-rrrr8s    zScrolledList.click_eventcCs$|jd}||||dS)Nr/r0)rr-r3 on_doubler5rrrr?s   zScrolledList.double_click_eventNcCsV|js||j}|jd|j|jf|jd}||||j |j dSr.) menu make_menurr1r2r r-r3Ztk_popupZx_rootZy_root)rr6r8r-rrrrGs  zScrolledList.popup_eventcCs t|jdd}||_|dS)Nr)Ztearoff)ZMenurr8 fill_menu)rr8rrrr9QszScrolledList.make_menucCs\|jd}|j|r"|d}n|jd}|dkrD|jn||||dSNr/rrr0rr-Zselection_includessizeZbellr3r4r5rrrrVs      zScrolledList.up_eventcCsX|jd}|j|r"|d}nd}||jkr@|jn||||dSr;r<r5rrrrcs      zScrolledList.down_eventcCs@|j|j||jdd|j||j|dSr')rZ focus_setr1Zselection_clearZ selection_setZseer,rrrr3ps    zScrolledList.selectcCsdSrrr rrrr:yszScrolledList.fill_menucCsdSrrr,rrrr4|szScrolledList.on_selectcCsdSrrr,rrrr7szScrolledList.on_double)__name__ __module__ __qualname__r&rr!rr*r+rrr8rr9rrr3r:r4r7rrrrrs"    rcCszt|}tt|ddd\}}|d|d|dfGdddt}||}tdD]}|d |qbdS) N+rz+%d+%dc@s$eZdZddZddZddZdS)z&_scrolled_list..MyScrolledListcSs|jjdddS)Nz right click)Zlabel)r8Z add_commandr rrrr:z0_scrolled_list..MyScrolledList.fill_menucSstd||dS)Nr3printr+r,rrrr4rDz0_scrolled_list..MyScrolledList.on_selectcSstd||dS)NZdoublerEr,rrrr7rDz0_scrolled_list..MyScrolledList.on_doubleN)r>r?r@r:r4r7rrrrMyScrolledListsrGz Item %02d)ZToplevelmapintZgeometrysplitrranger*)parenttopr2r rGZ scrolled_listirrr_scrolled_lists  rP__main__)mainz#idlelib.idle_test.test_scrolledlist) verbosity)runN) tkinterZ tkinter.ttkrrZidlelibrrrPr>ZunittestrRZidlelib.idle_test.htestrUrrrrs |