o
    h5                     @  sl   d dl mZ d dlmZ d dlmZmZ d dlmZ er"d dl	m
Z
 ddgZeegdf ZG d	d dZd
S )    )annotationsdefaultdict)TYPE_CHECKINGCallable)
MouseEvent)NotImplementedOrNoneMouseHandlerMouseHandlersr   c                   @  s$   e Zd ZdZdddZdddZdS )r
   z?
    Two dimensional raster of callbacks for mouse events.
    returnNonec                   s    d	dd t  fdd| _d S )
Nmouse_eventr   r   r   c                 S  s   t S )zD
            :param mouse_event: `MouseEvent` instance.
            )NotImplemented)r    r   f/var/www/html/optinet_system/venv/lib/python3.10/site-packages/prompt_toolkit/layout/mouse_handlers.pydummy_callback   s   z.MouseHandlers.__init__.<locals>.dummy_callbackc                     s   t  fddS )Nc                     s    S )Nr   r   r   r   r   <lambda>&   s    z:MouseHandlers.__init__.<locals>.<lambda>.<locals>.<lambda>r   r   r   r   r   r   &   s    z(MouseHandlers.__init__.<locals>.<lambda>)r   r   r   r   )r   mouse_handlers)selfr   r   r   __init__   s   
zMouseHandlers.__init__x_minintx_maxy_miny_maxhandler,Callable[[MouseEvent], NotImplementedOrNone]c           	      C  s6   t ||D ]}| j| }t ||D ]}|||< qqdS )z1
        Set mouse handler for a region.
        N)ranger   )	r   r   r   r   r   r   yrowxr   r   r   set_mouse_handler_for_range)   s   

z)MouseHandlers.set_mouse_handler_for_rangeN)r   r   )r   r   r   r   r   r   r   r   r   r   r   r   )__name__
__module____qualname____doc__r   r"   r   r   r   r   r
      s    
N)
__future__r   collectionsr   typingr   r   prompt_toolkit.mouse_eventsr   'prompt_toolkit.key_binding.key_bindingsr   __all__r	   r
   r   r   r   r   <module>   s    