
    Mh                    |    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        X/var/www/html/test/jupyter/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_mode6   s    r   strc                @    | j         j         d| j        d| j        dS )Nz(original_cursor_position=z, type=))	__class__r   r   r   r"   s    r   __repr__zSelectionState.__repr__9   s-    .){{TEb{{mqmv{{{{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   %   sp          )*+6            | | | | | |r   r   N)	r   
__future__r   enumr   __all__r   r   r   r   r   r   <module>r,      s     # " " " " "            D          | | | | | | | | | |r   