
    &h                         % S r SrSSKJr  SSKrSSKr/ q\\R                     \	S'   \R                  R                  \	S'   SqSqSqS rS rS	 rS
 rS r\S:X  a  \" 5         gg)zpygame.examples.eventlist

Learn about pygame events and input.

At the top of the screen are the state of several device values,
and a scrolling list of events are displayed on the bottom.

a  
Mouse Controls
==============

- 1st button on mouse (left click) to toggle events 'grabed'.
- 3rd button on mouse (right click) to toggle mouse visible.
- The window can be resized.
- Mouse the mouse around to see mouse events.
- If events grabbed and mouse invisible show virtual mouse coords.


Keyboard Joystick Controls
==========================

- press keys up an down to see events.
- you can see joystick events if any are plugged in.
- press "c" to toggle events generated by controllers.
    )ListN
img_on_offfontc                     [         R                  USX45      nU R                  XQ5        US   UR                  5       -   S-   US   4$ )N   r      )r   renderblit	get_width)winpostextcolorbgcolortextimgs         Q/var/www/auris/envauris/lib/python3.13/site-packages/pygame/examples/eventlist.pyshowtextr   -   sF    kk$52GHHWq6G%%''!+SV33    c                    SnU R                  US5        U R                  [        R                  SSSU5      S5        [	        U SSS	U5      nU R                  [
        [        R                  R                  5          U5        [	        XS
   S-   US   4SS	U5      nU R                  [
        [        R                  R                  5          U5        [	        U SSS	U5      nU R                  [
        [        R                  R                  5          U5        [	        U SSS	U5      n[        R                  R                  5       n[        US
   -  q[        US   -  q[        [        [        R                  R!                  5       5      [        U5      -   5      nSU-  n[	        XXQS5        [	        U SSS	U5      n["        (       a-  S["        [        R                  R%                  ["        5      4-  nOSn[	        XXQS5        [	        U SSS	U5      nU R                  [
        [        R&                  R)                  5          U5        [        R&                  R)                  5       =(       a#    [        R                  R                  5       (       + n[	        U SSS	U5      nU R                  [
        U   U5        U(       a(  [         S[         3n[	        XS
   S-   US   4XQS5        g g )N)2   r   r   )r   r     x   zStatus Arear      r   r   )   r   )
      zMouse Focus)   r   r   r   r   zMouse visible)J  r   zKeyboard Focus)r   <   zMouse Position(rel)z%s, %s (%s, %s))r   r   7   )r   r    zLast Keypressz%d, %sNone)r   Z   zInput Grabbed)r   r#   zVirtual Mousez, )fillr
   r   r	   r   r   pgmouseget_focusedget_visiblekeyget_rel	virtual_x	virtual_ytuplelistget_poslast_keynameeventget_grab)r   r   r   rel
mouse_datapis_virtual_mouses          r   
drawstatusr8   3   sS   GHHW&'HHT[[?GDfM
3-'
JCHHZ,,./5
!frk3q6"O_gC HHZ,,./5
3	#3_g
NCHHZ**,-s3
3"7'
RC
((


CQIQItBHH,,./$s);<JJ&ASq>2
3	?OW
MCx"&&++h"788Sq>2
3/?G
LCHHZ))+,c2xx((*I2883G3G3I/I
3	?OW
MCHHZ()3/kI;'1v{CF+QH r   c                 b   [         R                  SSSS5      nU R                  US5        Sn[        U5      nUR	                  5         U Hb  nU R                  USU45      nU R                  SUR                  UR                  S	UR                  45        U[         R                  5       -  nMd     g )
NzEvent History Arear   r   r   r   r   )r      i  r   r   il  )
r   r	   r
   r.   reverser$   righttopheight
get_height)r   historyimgyposhliners          r   drawhistoryrG   _   s    
++*A	
JCHHS(DWAIIKHHTB:&QWWaeeS!((34!! r   c                     UR                  S5      nU H:  nUS:X  d  SU;   a  M  [        R                  USSS5      nU R                  U5        M<     g )N
 z===r   r      r   r:   )splitr   r	   append)rA   r   linesrE   rB   s        r   draw_usage_in_historyrP   k   sJ    JJtE2:$kk$=)<s	 r   c                  z   [         R                  " 5         [        R                  R                  R                  5         [        [        5        [         R                  R                  S[         R                  5      n [         R                  R                  S5        [         R                  R                  S S5      q[        R                  [        R                  SSSS5      5        [        R                  [        R                  SSSS	5      5        / n[!        [         R"                  R%                  5       5       H  n[        R                  R                  R'                  U5      (       a9  [        R                  R                  R)                  U5      nS
UR*                  -   nO2[         R"                  R-                  U5      nSUR/                  5       -   n[        R                  USSS5      nUR                  U5        M     [         R"                  R%                  5       (       d)  [        R                  SSSS5      nUR                  U5        SnU(       GaJ  [         R0                  R3                  5        GH  nUR4                  [         R6                  :X  a  UR8                  [         R:                  :X  a  SnOUR8                  qUR8                  [         R>                  :X  a  [A        U[        5        UR8                  [         RB                  :X  aV  [        R                  R                  RE                  5       n	[        R                  R                  RG                  U	(       + 5        UR4                  [         RH                  :X  aP  URJ                  S:X  a@  [         R0                  RM                  [         R0                  RO                  5       (       + 5        UR4                  [         RH                  :X  aP  URJ                  S:X  a@  [         RP                  RS                  [         RP                  RU                  5       (       + 5        UR4                  [         RV                  :w  af  [         R0                  RY                  UR4                  5       SURZ                   3n[        R                  USSS5      nUR                  U5        USS  nUR4                  [         R\                  :X  a8  [         R                  R                  UR^                  [         R                  5      n UR4                  [         R`                  :X  d  GM  SnGM     [c        U 5        [e        X5        [         R                  Rg                  5         [         Rh                  Rk                  S5        U(       a  GMJ  [         Rl                  " 5         [n        e)N)r   i  z#Mouse Focus Workout. h key for help   Offr   r:   )r   r   r   On)r   r   r   zEnabled controller: zEnabled joystick: rK   zNo Joysticks to InitializeTF   z: ir   )8r%   initpygame_sdl2
controllerprintusagedisplayset_mode	RESIZABLEset_captionr   Fontr   rN   r	   rangejoystick	get_countis_controller
Controllerr1   Joystickget_namer2   gettypeKEYDOWNr)   K_ESCAPEr0   K_hrP   K_cget_eventstateset_eventstateMOUSEBUTTONDOWNbuttonset_grabr3   r&   set_visibler(   MOUSEMOTION
event_namedictVIDEORESIZEsizeQUITr8   rG   fliptimewaitquit
SystemExit)
r   rA   xctxtjrB   goingecurrent_states
             r   mainr   t   s   GGI
LL  "	%L
**

j",,
7CJJ@A 77<<b!D dkk%I}EFdkk$9mDE G 2;;((*+<<""0033''2215A(1661C$$Q'A&5Ckk#q-;s , ;;  ""kk6=)TsE
Avv#55BKK'!E  !uuH55BFF?)'5955BFF?$*LL$;$;$J$J$LMLL++::};LMvv+++A!!bhh&7&7&9"9:vv+++A$$)=)=)?%?@vv',,QVV45Rx@kk#q-Cs#!#$-vv'jj))!&&",,?vv ;  > 	3C!



RI %L GGI
r   __main__)__doc__r[   typingr   rW   r%   pygame._sdl2.controllerr   Surface__annotations__r   r`   r0   r+   r,   r   r8   rG   rP   r   __name__ r   r   <module>r      s   	&     "
D !ggll  		4)IX	"JZ zF r   