
     h4                    |    d Z ddlmZ ddlmZ g dZ G d de          Z G d de          Z G d	 d
          ZdS )z$
Data structures for the selection.
    )annotations)Enum)SelectionType	PasteModeSelectionStatec                      e Zd ZdZdZdZdZdS )r   z
    Type of selection.
    
CHARACTERSLINESBLOCKN)__name__
__module____qualname____doc__r	   r
   r        T/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/prompt_toolkit/selection.pyr   r      s-         
 J E EEEr   r   c                      e Zd ZdZdZdZdS )r   EMACSVI_AFTER	VI_BEFOREN)r   r   r   r   r   r   r   r   r   r   r      s        EHIIIr   r   c                  :    e Zd ZdZdej        fdd	Zdd
ZddZdS )r   z}
    State of the current selection.

    :param original_cursor_position: int
    :param type: :class:`~.SelectionType`
    r   original_cursor_positioninttyper   returnNonec                0    || _         || _        d| _        d S )NF)r   r   
shift_mode)selfr   r   s      r   __init__zSelectionState.__init__,   s    
 )A%	r   c                    d| _         d S )NT)r   r   s    r   enter_shift_modezSelectionState.enter_shift_mode5   s    r   strc                X    d                     | j        j        | j        | j                  S )Nz,{}(original_cursor_position={!r}, type={!r}))format	__class__r   r   r   r"   s    r   __repr__zSelectionState.__repr__8   s-    =DDN#)I
 
 	
r   N)r   r   r   r   r   r   )r   r   )r   r$   )	r   r   r   r   r   r	   r    r#   r(   r   r   r   r   r   $   sj          )*+6            
 
 
 
 
 
r   r   N)	r   
__future__r   enumr   __all__r   r   r   r   r   r   <module>r,      s     # " " " " "            D          
 
 
 
 
 
 
 
 
 
r   