File: //opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyo
�
	T~gc           @   s�   d  Z  d d l Z d d l m Z m Z m Z m Z d e f d �  �  YZ d �  Z e	 d k r| d d l
 m Z e e � n  d S(	   sd   
OptionMenu widget modified to allow dynamic menu reconfiguration
and setting of highlightthickness
i����N(   t
   OptionMenut   _setitt	   StringVart   Buttont
   DynOptionMenuc           B   s#   e  Z d  Z d �  Z d d � Z RS(   sF   
    unlike OptionMenu, our kwargs can include highlightthickness
    c         O   s   t  j  | � } d | j �  k r+ | d =n  t j |  | | | | | � |  j d | j d � � | |  _ | j d � |  _ d  S(   Nt   highlightthicknesst   command(   t   copyt   keysR    t   __init__t   configt   gett   variableR   (   t   selft   masterR   t   valuet   valuest   kwargst
   kwargsCopy(    (    s@   /opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyR	      s    
	c      	   C   sn   |  d j  d d � x: | D]2 } |  d j d | d t |  j | |  j � � q W| rj |  j j | � n  d S(   s�   
        clear and reload the menu with a new set of options.
        valueList - list of new options
        value - initial value to set the optionmenu's menubutton to
        t   menui    t   endt   labelR   N(   t   deletet   add_commandR   R   R   t   set(   R
   t	   valueListR   t   item(    (    s@   /opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyt   SetMenu   s    
N(   t   __name__t
   __module__t   __doc__R	   t   NoneR   (    (    (    s@   /opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyR      s   	c            s�   d d l  m } | �  } | j d � | j d |  j �  d |  j �  d f � | j �  t | � } | j d � t	 | | d d	 d
 d � �  �  j
 �  �  f d �  } t | d
 d d | �} | j
 �  d  S(   Ni����(   t   Toplevels   Tets dynamic option menus
   200x100+%d+%di�   i�   s   Old option sett   old1t   old2t   old3t   old4c              s#   �  j  d d d d g d d �d  S(   Nt   new1t   new2t   new3t   new4R   s   new option set(   R   (    (   t   dyn(    s@   /opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyt   update2   s    t   texts   Change option setR   (   t   TkinterR    t   titlet   geometryt   winfo_rootxt   winfo_rootyt	   focus_setR   R   R   t   packR   (   t   parentR    t   topt   varR*   t   button(    (   R)   s@   /opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyt   _dyn_option_menu$   s    	
t   __main__(   t   run(   R   R   R,   R    R   R   R   R   R7   R   t   idlelib.idle_test.htestR9   (    (    (    s@   /opt/alt/python27/lib64/python2.7/idlelib/dynOptionMenuWidget.pyt   <module>   s   "