
    jj                    `   d dl mZ d dlZd dlZd dlmZmZmZmZ d dl	m
Z
mZmZmZmZmZmZmZmZ dZdZdZdZd	ZdZ G d
 de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d dej>                        Z  G d dej>                        Z! G d de      Z" G d de      Z# G d de      Z$ G d  d!e      Z% G d" d#e      Z& G d$ d%ej>                        Z'ejP                  jR                  Z)ege)_*        ee)_+        ejP                  jX                  Z,eege,_*        e
e,_+        ejP                  jZ                  Z-eege-_*        e
e-_+        ejP                  j\                  Z.e
e._+        ejP                  j^                  Z/e ee      ge/_*        e
e/_+        y)&    )annotationsN)POINTER	StructureUnionwindll)	BOOLCHARDWORDHANDLELPDWORDSHORTUINTWCHARWORDii      i   c                  ,    e Zd ZU dZdefdefgZded<   y)COORDz:https://docs.microsoft.com/en-us/windows/console/coord-strXY'typing.ClassVar[list[tuple[str, type]]]_fields_N__name__
__module____qualname____doc__r   r   __annotations__     ]/home/ubuntu/.cache/pipx/cdb5059130eadca/lib/python3.12/site-packages/urwid/display/_win32.pyr   r      s$    D 
e	e9H5 r    r   c                  8    e Zd ZU dZdefdefdefdefgZded<   y)	
SMALL_RECTz?https://docs.microsoft.com/en-us/windows/console/small-rect-strLeftTopRightBottomr   r   Nr   r   r    r!   r#   r#      s4    I 
		%	5	9H5 r    r#   c                  >    e Zd ZU dZdefdefdefdefdefgZded<   y	)
CONSOLE_SCREEN_BUFFER_INFOzOhttps://docs.microsoft.com/en-us/windows/console/console-screen-buffer-info-strdwSizedwCursorPositionwAttributessrWindowdwMaximumWindowSizer   r   N)	r   r   r   r   r   r   r#   r   r   r   r    r!   r)   r)   '   s>    Y 
5	U#		Z 	&9H5 r    r)   c                  ,    e Zd ZU dZdefdefgZded<   y)uCharEhttps://docs.microsoft.com/en-us/windows/console/key-event-record-str	AsciiCharUnicodeCharr   r   N)r   r   r   r   r	   r   r   r   r   r    r!   r0   r0   3   s&    O 
d	9H5 r    r0   c                  D    e Zd ZU dZdefdefdefdefdefdefgZde	d	<   y
)KEY_EVENT_RECORDr1   bKeyDownwRepeatCountwVirtualKeyCodewVirtualScanCoder0   dwControlKeyStater   r   N)
r   r   r   r   r   r   r0   r
   r   r   r   r    r!   r5   r5   <   sF    O 
T		D!	T"	%	e$9H5 r    r5   c                  8    e Zd ZU dZdefdefdefdefgZded<   y)	MOUSE_EVENT_RECORDzGhttps://docs.microsoft.com/en-us/windows/console/mouse-event-record-strdwMousePositiondwButtonStater:   dwEventFlagsr   r   N)r   r   r   r   r   r
   r   r   r   r    r!   r<   r<   I   s6    Q 
E"	% 	e$		9H5 r    r<   c                  $    e Zd ZdZdZdZdZdZdZy)MouseButtonStateHhttps://learn.microsoft.com/en-us/windows/console/mouse-event-record-str      r   r      N)	r   r   r   r   FROM_LEFT_1ST_BUTTON_PRESSEDRIGHTMOST_BUTTON_PRESSEDFROM_LEFT_2ND_BUTTON_PRESSEDFROM_LEFT_3RD_BUTTON_PRESSEDFROM_LEFT_4TH_BUTTON_PRESSEDr   r    r!   rA   rA   T   s#    R#) %#) #) #) r    rA   c                  $    e Zd ZdZdZdZdZdZdZy)MouseEventFlagsrB   r   rC   rD   r   r   N)	r   r   r   r   BUTTON_PRESSEDMOUSE_MOVEDDOUBLE_CLICKMOUSE_WHEELEDMOUSE_HWHEELEDr   r    r!   rL   rL   ^   s    RNKLMNr    rL   c                  &    e Zd ZU dZdefgZded<   y)WINDOW_BUFFER_SIZE_RECORDzNhttps://docs.microsoft.com/en-us/windows/console/window-buffer-size-record-strr*   r   r   N)r   r   r   r   r   r   r   r   r    r!   rS   rS   h   s    X:BE9J8KH5Kr    rS   c                  &    e Zd ZU dZdefgZded<   y)MENU_EVENT_RECORDzFhttps://docs.microsoft.com/en-us/windows/console/menu-event-record-strdwCommandIdr   r   N)r   r   r   r   r   r   r   r   r    r!   rU   rU   n   s    P:G9N8OH5Or    rU   c                  &    e Zd ZU dZdefgZded<   y)FOCUS_EVENT_RECORDzGhttps://docs.microsoft.com/en-us/windows/console/focus-event-record-str	bSetFocusr   r   N)r   r   r   r   r   r   r   r   r    r!   rX   rX   t   s    Q:Et9L8MH5Mr    rX   c                  >    e Zd ZU dZdefdefdefdefdefgZ	de
d<   y	)
EventAhttps://docs.microsoft.com/en-us/windows/console/input-record-strKeyEvent
MouseEventWindowBufferSizeEvent	MenuEvent
FocusEventr   r   N)r   r   r   r   r5   r<   rS   rU   rX   r   r   r   r    r!   r[   r[   z   sC    K 
%&	)*	 ";<	'(	)*9H5 r    r[   c                  ,    e Zd ZU dZdefdefgZded<   y)INPUT_RECORDr\   	EventTyper[   r   r   N)r   r   r   r   r   r[   r   r   r   r    r!   rc   rc      s     K:Et9LwX]N^8_H5_r    rc   c                       e Zd ZdZdZdZdZdZy)rd   rC   rD   r   r   rE   N)r   r   r   	KEY_EVENTMOUSE_EVENTWINDOW_BUFFER_SIZE_EVENT
MENU_EVENTFOCUS_EVENTr   r    r!   rd   rd      s    IK%JKr    rd   )0
__future__r   enumtypingctypesr   r   r   r   ctypes.wintypesr   r	   r
   r   r   r   r   r   r   STD_INPUT_HANDLESTD_OUTPUT_HANDLE"ENABLE_VIRTUAL_TERMINAL_PROCESSINGDISABLE_NEWLINE_AUTO_RETURNENABLE_VIRTUAL_TERMINAL_INPUTENABLE_WINDOW_INPUTr   r#   r)   r0   r5   r<   IntFlagrA   rL   rS   rU   rX   r[   rc   rd   kernel32GetStdHandleargtypesrestypeGetConsoleModeSetConsoleModeReadConsoleInputWGetConsoleScreenBufferInfor   r    r!   <module>r      s   "   4 4 X X X    &, "$  &  I  	 	E 
y 
 *t|| *dll L	 LP	 PN N	E 	`9 `  ++   //!7+   //!5/   OO55     $__GG '-w7Q/R&S  #%)  "r    