python (3.11.7)
    e+                        d dl Z d dlmZ  G d de          Z G d d          Z G d de          Z G d	 d
e          Z G d de          Zd
 Ze	dk    r'd dl
mZ  eddd           d dlm
Z
  e
e           dS dS )    N)	Delegatorc                   z    e Zd ZdZd Zd Zd Zd Zd Zd Z	dZ
d	 Zd
Zd Z
ddZdd
Zd Zd ZddZd Zd ZdS )
UndoDelegatori  c                 V    t          j        |            |                                  d S N)r   __init__
reset_undoselfs    @/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/idlelib/undo.pyr   zUndoDelegator.__init__   s)    4       c                 f   | j         ?|                     d           |                     d           |                     d           t          j        | |           |S|                     d| j                   |                     d| j                   |                     d| j                   d S d S )Nz<<undo>>z<<redo>>z<<dump-undo-state>>)delegateunbindr   setdelegatebind
undo_event
redo_event
dump_event)r   r   s     r   r   zUndoDelegator.setdelegate   s    =$KK
###KK
###KK-...dH---IIj$/222IIj$/222II+T_=====  r
   c                 T   ddl m }  || j        d | j                            t          d| j        d           t          d| j        d           t          d| j        d           t          d|                                             || j        | j        d                     d	S )
Nr   )pprintzpointer: )endzsaved:z
can_merge:zget_saved():break)r   undolistpointerprintsaved	can_merge	get_saved)r   eventr   s      r   r   zUndoDelegator.dump_event(   s    !!!!!!t}]dl]+,,,
j$,C0000
h
,,,,
lDN4444
ndnn..///t}T\]]+,,,wr
   c                 h    d| _         d| _        g | _        d| _        |                     d           d S Nr      )	was_savedr   r   	undoblock	set_savedr
   s    r   r	   zUndoDelegator.reset_undo2   s6    
qr
   c                 h    |r
| j         | _        nd| _        d| _        |                                  d S )Nr$   F)r   r   r   check_saved)r   flags     r   r(   zUndoDelegator.set_saved9   s;     	DJJDJr
   c                 "