î e fã@sfddlTddlmZGdd„dƒZdd„ZedkrbddlmZeeƒnd S) é)Ú*)Ú macosxSupportc@sÐeZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dd„Z dZ dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd „ZdS)!Ú ScrolledListz(None)cKsn||_t|ƒ|_}|jjddddƒt|ddƒ|_}|jjdddd ƒt|d d d d ƒ|_}|rœ|j|ƒn|jddddƒ|j |d<|j |d<|j d|j ƒ|j d|j ƒtjƒr'|j d|jƒ|j d|jƒn|j d|jƒ|j d|jƒ|j d|jƒ|jƒdS)NZfillZbothÚexpandéÚnameÚvbarZsideÚrightÚyZexportselectionrZ backgroundZwhiteZcommandZyscrollcommandzzzzzzz )ÚmasterZFrameÚframeZpackZ ScrollbarrZListboxÚlistboxZ configureZyviewÚsetZbindÚ click_eventÚdouble_click_eventrZisAquaTkÚ popup_eventÚup_eventÚ down_eventÚclear)Úselfr Zoptionsr rr ©rú9/opt/alt/python34/lib64/python3.4/idlelib/ScrolledList.pyÚ__init__s*    zScrolledList.__init__cCs|jjƒdS)N)r Zdestroy)rrrrÚclose$szScrolledList.closecCs6|jjddƒd|_|jjd|jƒdS)NrÚendr)r ÚdeleteÚemptyÚinsertÚdefault)rrrrr's zScrolledList.clearcCsE|jr(|jjddƒd|_n|jjdt|ƒƒdS)Nrr)rr rrÚstr)rÚitemrrrÚappend,s  zScrolledList.appendcCs|jj|ƒS)N)r Úget)rÚindexrrrr"2szScrolledList.getcCsP|jjd|j|jfƒ|jjdƒ}|j|ƒ|j|ƒdS)Nz@%d,%dÚactiveÚbreak)r ÚactivateÚxr r#ÚselectÚ on_select)rÚeventr#rrrr5s    zScrolledList.click_eventcCs0|jjdƒ}|j|ƒ|j|ƒdS)Nr$r%)r r#r(Ú on_double)rr*r#rrrr<s  zScrolledList.double_click_eventNcCsx|js|jƒn|j}|jjd|j|jfƒ|jjdƒ}|j|ƒ|j|j |j ƒdS)Nz@%d,%dr$) ÚmenuÚ make_menur r&r'r r#r(Ztk_popupZx_rootZy_root)rr*r,r#rrrrDs     zScrolledList.popup_eventcCs,t|jddƒ}||_|jƒdS)NZtearoffr)ZMenur r,Ú fill_menu)rr,rrrr-Ms zScrolledList.make_menucCs~|jjdƒ}|jj|ƒr1|d}n|jjƒd}|dkr`|jjƒn|j|ƒ|j|ƒdS)Nr$rrr%)r r#Úselection_includesÚsizeÚbellr(r))rr*r#rrrrRs    zScrolledList.up_eventcCsz|jjdƒ}|jj|ƒr1|d}nd}||jjƒkr\|jjƒn|j|ƒ|j|ƒdS)Nr$rrr%)r r#r/r0r1r(r))rr*r#rrrr_s   zScrolledList.down_eventcCsT|jjƒ|jj|ƒ|jjddƒ|jj|ƒ|jj|ƒdS)Nrr)r Z focus_setr&Zselection_clearZ selection_setZsee)rr#rrrr(ls  zScrolledList.selectcCsdS)Nr)rrrrr.uszScrolledList.fill_menucCsdS)Nr)rr#rrrr)xszScrolledList.on_selectcCsdS)Nr)rr#rrrr+{szScrolledList.on_double)Ú__name__Ú __module__Ú __qualname__rrrrr!r"rrr,rr-rrr(r.r)r+rrrrrs"           rc Cs¼tƒ}|jdƒttttjd|jƒƒƒƒ\}}}}|jd||dfƒGdd„dtƒ}||ƒ}x%t dƒD]}|j d|ƒq“W|j ƒdS) NzTest ScrolledListz[x+]z+%d+%dé–c@s4eZdZdd„Zdd„Zdd„ZdS)z&_scrolled_list..MyScrolledListcSs|jjddƒdS)NZlabelz right click)r,Z add_command)rrrrr.…sz0_scrolled_list..MyScrolledList.fill_menucSstd|j|ƒƒdS)Nr()Úprintr")rr#rrrr)†sz0_scrolled_list..MyScrolledList.on_selectcSstd|j|ƒƒdS)NZdouble)r6r")rr#rrrr+‡sz0_scrolled_list..MyScrolledList.on_doubleN)r2r3r4r.r)r+rrrrÚMyScrolledList„s   r7éz Item %02d) ZTkÚtitleÚlistÚmapÚintÚreÚsplitZgeometryrÚranger!Zmainloop) ÚparentÚrootÚwidthZheightr'r r7Z scrolled_listÚirrrÚ_scrolled_lists  3 rDÚ__main__)ÚrunN)ZtkinterZidlelibrrrDr2Zidlelib.idle_test.htestrFrrrrÚs {