o
    Y+iD                     @   s*   d dl mZ d dlmZmZ dddZdS )    N)ButtonSliderFc                    s<  t |}d| }td\}}|jd j  | \}}td| d}|j||dd |	d |
 d | d g t|D ]1\}	}
td	d
d|	d  |  dd| g}t|
tskttg d|
}
tdd|i|
 qF fddfdd}|jd| |sD ]}| qt  dS )a   A light GUI to manually explore and tune the outputs of 
        a function.
        slider_properties is a list of dicts (arguments for Slider )
        
        def volume(x,y,z):
            return x*y*z
    
        intervals = [ { 'label' :  'width',  'valmin': 1 , 'valmax': 5 },
                  { 'label' :  'height',  'valmin': 1 , 'valmax': 5 },
                  { 'label' :  'depth',  'valmin': 1 , 'valmax': 5 } ]
        inputExplorer(volume,intervals)
    g      ?   zInputs for '%s'g      ?   T)forwardFg?gffffff?g?g?)labelvalminvalmaxvalinitaxc                    s*    dd D  }|d urt | d S d S )Nc                 s   s    | ]}|j V  qd S )N)val).0s r   K/var/www/html/venv/lib/python3.10/site-packages/moviepy/video/io/sliders.py	<genexpr>8   s    z.sliders.<locals>.on_changed.<locals>.<genexpr>)print)eventres)fslidersr   r   
on_changed7   s   zsliders.<locals>.on_changedc                    s   | j du r |  d S d S )Nenter)key)r   )r   r   r   on_key_press<   s   
zsliders.<locals>.on_key_presskey_press_eventNr   )lenpltsubplotscanvasset_window_title	func_nameget_size_inchesminset_size_inchesset_frame_on	get_xaxisset_visible	get_yaxis	enumerateaxes
isinstancedictzipappendr   mpl_connectr   show)r   sliders_propertieswait_for_validationnVarsslider_widthfigurer   widthheighti
propertiesr   r   r   )r   r   r   r   r      s6   


r   )F)matplotlib.pyplotpyplotr   matplotlib.widgetsr   r   r   r   r   r   r   <module>   s    