Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/site-packages/pyautogui/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/site-packages/pyautogui/__pycache__/_pyautogui_win.cpython-312.pyc

�

(ٜg�Q��4�ddlZddlZddlZddlmZmZmZddlZejdk7red��	ejjj�	dZ
dZdZeezZdZd	ZeezZd
ZdZeezZdZd
ZdZdZdZdZdZGd�dej<�ZGd�dej<�Z Gd�dej<�Z!Gd�dej<�Z"	e#ejHD�cgc]}|df��c}�Z%e%jMidd�dd�dd�dd�dd�dd�d d!�d"d!�d#d!�d$d	�d%d&�d'd(�d)d*�d+d,�d-d.�d/d.�d0d.�id1d2�d3d4�d5d6�d7d6�d8d9�d:d9�d;d<�d=d>�d?d@�dAdB�dCd
�dDd
�dEdF�dGdH�dIdF�dJdH�dKdL��idMdN�dOdP�dQdR�dSdT�dUdV�dWdX�dYdZ�d[d\�d]d^�d_d^�d`d^�dad^�dbdc�ddde�dfde�dgdh�did��idjd�dkdl�dmdn�dodp�dqdr�dsdt�dudv�dwdx�dydz�d{d|�d}d~�dd��d�d��d�d��d�d��d�d��d�d���id�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d���id�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d“d�dēd�dƓd�dȓd�dʓd�d̓d�dΓ�id�dГd�dғd�dԓd�d֓d�dؓd�dړd�dܓd�dޓd�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d�d��d�d�d���e'd
d��D]OZ(ejjjSejTjWe,e(���e%e,e(�<�Qd�Z-d��Z.d��Z/d��Z0d��Z1d��Z2d��Z3d��Z4d��Z5�dd��Z6�dd��Z7d��Z8�d�Z9y#e$rY���wxYwcc}w(�N)�LEFT�MIDDLE�RIGHT�win32zCThe pyautogui_win module should only be loaded on a Windows system.������ �@i�iic	�D�eZdZdejj
fdejj
fdejjfdejjfdejjfdejejj�fgZ	y)�
MOUSEINPUT�dx�dy�	mouseData�dwFlags�time�dwExtraInfoN)
�__name__�
__module__�__qualname__�ctypes�wintypes�LONG�DWORD�POINTER�ULONG�_fields_���C/usr/local/lib/python3.12/site-packages/pyautogui/_pyautogui_win.pyrr>s���	
�v���#�#�$�	
�v���#�#�$�	�f�o�o�+�+�,�	�F�O�O�)�)�*�	����&�&�'�	�����v���'<�'<�=�>�
�Hr!rc��eZdZdejj
fdejj
fdejjfdejjfdejejj�fgZ	y)�
KEYBDINPUT�wVk�wScanrrrN)
rrrrr�WORDrrrrr r!r"r$r$Hsn��	����$�$�%�	�&�/�/�&�&�'�	�F�O�O�)�)�*�	����&�&�'�	�����v���'<�'<�=�>��Hr!r$c��eZdZdejj
fdejjfdejj
fgZy)�
HARDWAREINPUT�uMsg�wParamL�wParamHN)rrrrrrr'rr r!r"r)r)Qs?��	����&�&�'�	�F�O�O�(�(�)�	�F�O�O�)�)�*��Hr!r)c�r�eZdZGd�dej�ZdZdejjfdefgZ	y)�INPUTc�"�eZdZdefdefdefgZy)�INPUT._I�mi�ki�hiN)rrrrr$r)rr r!r"�_Ir0Ys!��
�:��
�:��
�=�!�
�r!r4)�i�typer5N)
rrrr�Unionr4�_anonymous_rrrr r!r"r.r.Xs9��
�V�\�\�
��K�	����&�&�'�	�b�	��Hr!r.�	backspace��super�[�tab�	�	�clear��enter�
�
�return�shift�ctrl��alt��pause��capslock��kana��hanguel�hangul�junja��final��hanja��kanji�esc��escape�convert��
nonconvert��accept��
modechange�� �space�pgup�!�pgdn�"�pageup�pagedown�end�#�home�$�left�%�up�&�right�'�down�(�select�)�print�*�execute�+�prtsc�,�prtscr�prntscrn�printscreen�insert�-�del�.�delete�help�/�win�winleft�winright�\�apps�]�sleep�_�num0�`�num1�a�num2�b�num3�c�num4�d�num5�e�num6�f�num7�g�num8�h�num9�i�multiply�j�add�k�	separator�l�subtract�m�decimal�n�divide�o�f1�p�f2�q�f3�r�f4�s�f5�t�f6�u�f7�v�f8�w�f9�x�f10�y�f11�z�f12�{�f13�|�f14�}�f15�~�f16��f17��f18��f19��f20��f21��f22��f23��f24��numlock��
scrolllock��	shiftleft��
shiftright��ctrlleft��	ctrlright��altleft��altright��browserback��browserforward��browserrefresh��browserstop��
browsersearch��browserfavorites��browserhome��
volumemute��
volumedown��volumeup��	nexttrack��	prevtrack��stop��	playpause��
launchmail��launchmediaselect���)�
launchapp1�
launchapp2c�,�|tvs	t|�ytj|�}	tt|d�\}}|dzdf|dzdf|dzxs|dffD]8\}}|s�	tj
jj|d	td	��:tj
jj|d	td	�|dzxs|df|dzdf|dzdffD]8\}}|s�	tj
jj|d	td	��:y)
a}Performs a keyboard key press without the release. This will put that
    key in a held down state.

    NOTE: For some reason, this does not seem to cause key repeats like would
    happen if a keyboard key was held down on a text field.

    Args:
      key (str): The key to be pressed down. The valid names are listed in
      pyautogui.KEY_NAMES.

    Returns:
      None
    N�r	rJrrHrrr)
�keyboardMapping�	pyautogui�isShiftCharacter�divmodr�windll�user32�keybd_event�KEYEVENTF_KEYDOWN�KEYEVENTF_KEYUP��key�
needsShift�mods�vkCode�	apply_mod�vk_mods      r"�_keyDownr)�s���/�!�_�S�%9�%A���+�+�C�0�J���/�#�.��6�L�D�&�#�a�x��.����4�0@�	
���	�Z��&�(��	�6���M�M� � �,�,�V�Q�8I�1�M�(��M�M���$�$�V�Q�0A�1�E�#�a�x�5�:�t�<�t�a�x��>N�	
���4����	�6���M�M� � �,�,�V�Q���K�r!c�$�|tvs	t|�ytj|�}	tt|d�\}}|dzdf|dzdf|dzxs|dffD]4\}}|s�	tj
jj|d	d	d	��6tj
jj|d	td	�|dzxs|df|dzdf|dzdffD]8\}}|s�	tj
jj|d	td	��:y)
z�Performs a keyboard key release (without the press down beforehand).

    Args:
      key (str): The key to be released up. The valid names are listed in
      pyautogui.KEY_NAMES.

    Returns:
      None
    Nrr	rJrrHrrr)	rrrrrrrrr!r"s      r"�_keyUpr+'s���/�!�_�S�%9�%A���+�+�C�0�J���/�#�.��6�L�D�&�#�a�x��.����4�0@�	
���	�Z��&�(��	�6���M�M� � �,�,�V�Q��1�=�(��M�M���$�$�V�Q���C�#�a�x�5�:�t�<�t�a�x��>N�	
���4����	�6���M�M� � �,�,�V�Q���K�r!c���tjj�}tjjjtj|��|j|jfS)z�Returns the current xy coordinates of the mouse cursor as a two-integer
    tuple by calling the GetCursorPos() win32 function.

    Returns:
      (x, y) tuple of the current xy coordinates of the mouse cursor.
    )	rr�POINTrr�GetCursorPos�byref�x�y)�cursors r"�	_positionr3OsJ���_�_�
"�
"�
$�F�
�M�M���%�%�f�l�l�6�&:�;��H�H�f�h�h��r!c��tjjjd�tjjjd�fS)z�Returns the width and height of the screen as a two-integer tuple.

    Returns:
      (width, height) tuple of the screen size, in pixels.
    rr�rrr�GetSystemMetricsr r!r"�_sizer7\s:��
�M�M� � �1�1�!�4�f�m�m�6J�6J�6[�6[�\]�6^�_�_r!c�X�tjjj||�y)a)Send the mouse move event to Windows by calling SetCursorPos() win32
    function.

    Args:
      button (str): The mouse button, either 'left', 'middle', or 'right'
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.

    Returns:
      None
    N)rrr�SetCursorPos)r0r1s  r"�_moveTor:es���M�M���%�%�a��+r!c���|tttfvrtd|z��|tk(rt}n|tk(rt
}n|tk(rt}	t||�y#ttf$rYywxYw)a,Send the mouse down event to Windows by calling the mouse_event() win32
    function.

    Args:
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.
      button (str): The mouse button, either 'left', 'middle', or 'right'

    Returns:
      None
    �Jbutton arg to _click() must be one of "left", "middle", or "right", not %sN)
rrr�
ValueError�MOUSEEVENTF_LEFTDOWN�MOUSEEVENTF_MIDDLEDOWN�MOUSEEVENTF_RIGHTDOWN�_sendMouseEvent�PermissionError�OSError�r0r1�button�EVs    r"�
_mouseDownrGwsr���d�F�E�*�*��e�hn�n�o�o�
��~�
!��	�6�	�
#��	�5��
"��
���A�q�!���W�%�
��
���
A � A2�1A2c���|tttfvrtd|z��|tk(rt}n|tk(rt
}n|tk(rt}	t||�y#ttf$rYywxYw)a*Send the mouse up event to Windows by calling the mouse_event() win32
    function.

    Args:
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.
      button (str): The mouse button, either 'left', 'middle', or 'right'

    Returns:
      None
    r<N)
rrrr=�MOUSEEVENTF_LEFTUP�MOUSEEVENTF_MIDDLEUP�MOUSEEVENTF_RIGHTUPrArBrCrDs    r"�_mouseUprM�sr���d�F�E�*�*��e�hn�n�o�o�
��~�
��	�6�	�
!��	�5��
 ��
���A�q�!���W�%�
��
�rHc���|tttfvrtd|z��|tk(rt}n|tk(rt
}n|tk(rt}	t||�y#ttf$rYywxYw)a-Send the mouse click event to Windows by calling the mouse_event() win32
    function.

    Args:
      button (str): The mouse button, either 'left', 'middle', or 'right'
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.

    Returns:
      None
    r<N)
rrrr=�MOUSEEVENTF_LEFTCLICK�MOUSEEVENTF_MIDDLECLICK�MOUSEEVENTF_RIGHTCLICKrArBrCrDs    r"�_clickrR�sr���d�F�E�*�*��e�hn�n�o�o�
��~�
"��	�6�	�
$��	�%��
#��
���A�q�!���W�%�
��
�rHc�Z�tjjjd�dk7S)NrTrr5r r!r"�_mouse_is_swappedrT�s$���=�=���0�0��4��9�9r!c��|dk7r|dk7sJd��t�\}}d|z|zdz}d|z|zdz}tjjj	|tj
|�tj
|�|d�y)a�The helper function that actually makes the call to the mouse_event()
    win32 function.

    Args:
      ev (int): The win32 code for the mouse event. Use one of the MOUSEEVENTF_*
      constants for this argument.
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.
      dwData (int): The argument for mouse_event()'s dwData parameter. So far
        this is only used by mouse scrolling.

    Returns:
      None
    Nzx and y cannot be set to Noneirr)r7rrr�mouse_event�c_long)�evr0r1�dwData�width�height�
convertedX�
convertedYs        r"rArA�s���
��9��d��C�$C�C�"� �G�M�E�6����e�#�a�'�J����f�$�q�(�J�
�M�M���$�$�R����z�)B�F�M�M�R\�D]�_e�gh�ir!c���t�\}}t�\}}|�|}n|dkrd}n
||k\r|dz
}|�|}n|dkrd}n
||k\r|dz
}	tt|||��y#tt
f$rYywxYw)a�Send the mouse vertical scroll event to Windows by calling the
    mouse_event() win32 function.

    Args:
      clicks (int): The amount of scrolling to do. A positive value is the mouse
      wheel moving forward (scrolling up), a negative value is backwards (down).
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.

    Returns:
      None
    Nrr)rY)r3r7rA�MOUSEEVENTF_WHEELrBrC)�clicksr0r1�startx�startyrZr[s       r"�_scrollrc�s����[�N�F�F��G�M�E�6��y����q�5��A�
�%�Z���	�A��y����q�5��A�
�&�[���
�A���)�1�a��?���W�%����s�
A�A0�/A0c��t|||�S)a{Send the mouse horizontal scroll event to Windows by calling the
    mouse_event() win32 function.

    Args:
      clicks (int): The amount of scrolling to do. A positive value is the mouse
      wheel moving right, a negative value is moving left.
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.

    Returns:
      None
    �rc�r`r0r1s   r"�_hscrollrg s���6�1�a� � r!c��t|||�S)afA wrapper for _scroll(), which does vertical scrolling.

    Args:
      clicks (int): The amount of scrolling to do. A positive value is the mouse
      wheel moving forward (scrolling up), a negative value is backwards (down).
      x (int): The x position of the mouse event.
      y (int): The y position of the mouse event.

    Returns:
      None
    rerfs   r"�_vscrollri0s���6�1�a� � r!)r)NN):r�ctypes.wintypesrrrr�sys�platform�	Exceptionrr�SetProcessDPIAware�AttributeError�MOUSEEVENTF_MOVEr>rJrOr@rLrQr?rKrP�MOUSEEVENTF_ABSOLUTEr_�MOUSEEVENTF_HWHEELr r!�INPUT_MOUSE�INPUT_KEYBOARD�	Structurerr$r)r.�dict�	KEY_NAMESr�update�range�c�
VkKeyScanAr�WCHAR�chrr)r+r3r7r:rGrMrRrTrArcrgri)r#s0r"�<module>r~s���
���)�)�
��<�<�G��
�Y�
Z�Z�	�	�=�=���*�*�,�
_�������,�/A�A������.�1D�D������0�3G�G������������������!�!����!�!���F�$�$���F����"V��y�/B�/B�C�/B���d��/B�C�D�����z���z��$�z��T�z�
�4�	z�
	�$�z��T�
z��T�z�	�$�z�
�d�z��T�z��D�z�
�4�z��T�z���z��D�z� �t�!z�"
�d�#z�$�T�%z�&�T�'z�(�T�)z�*�T�+z�,
�4�-z�.
�d�/z�0�t�1z�2�$�3z�4
�d�5z�6�$�7z�8��9z�:�T�;z�<�D�=z�>�D�?z�@
�d�Az�B��Cz�D
�4�Ez�F�D�Gz�H�D�Iz�J	�$�Kz�L�T�Mz�N�D�Oz�P
�d�Qz�R�T�Sz�T�t�Uz�V�T�Wz�X
�d�Yz�Z��[z�\�4�]z�^
�d�_z�`
�4�az�b
�d�cz�d�D�ez�f
�4�gz�h�t�iz�j��kz�l�D�mz�n�T�oz�p�D�qz�r�D�sz�t�D�uz�v�D�wz�x�D�yz�z�D�{z�|�D�}z�~�D�z�@�D�Az�B�D�Cz�D��Ez�F
�4�Gz�H��Iz�J��Kz�L�t�Mz�N
�d�Oz�P	�$�Qz�R	�$�Sz�T	�$�Uz�V	�$�Wz�X	�$�Yz�Z	�$�[z�\	�$�]z�^	�$�_z�`	�$�az�b
�4�cz�d
�4�ez�f
�4�gz�h
�4�iz�j
�4�kz�l
�4�mz�n
�4�oz�p
�4�qz�r
�4�sz�t
�4�uz�v
�4�wz�x
�4�yz�z
�4�{z�|
�4�}z�~
�4�z�@�t�Az�B�$�Cz�D��Ez�F�$�Gz�H��Iz�J��Kz�L�t�Mz�N��Oz�P�4�Qz�R�d�Sz�T�d�Uz�V�4�Wz�X�T�Yz�Z��[z�\�4�]z�^�$�_z�`�$�az�b��cz�d��ez�f��gz�h�D�iz�j��kz�l�$�mz�n��oz�p��sz�z�J
�r�3��A�$�m�m�2�2�=�=�f�o�o�>S�>S�TW�XY�TZ�>[�\�O�C��F��
�*L�Z%L�P
 �`�,�$
�:
�8
�::�
"j�R"�J
!� !��}�	��	��|Ds�$L	�(L�	L�L

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists