
    ncG                     f    d dl m Z d dlZddlmZmZ 	 e dZ	dZ
 G d de      Zy# e$ r eZY w xY w)	    )timeN   )canonical_namesnormalize_namedownupc                   D    e Zd ZdZdZdZdZdZdZdZ	ddZ
ddZd Zd Zy)KeyboardEventNc                     || _         || _        |
t               n|| _        || _        || _        || _        |rt        |      | _        y y N)	
event_type	scan_codenowr   device	is_keypad	modifiersr   name)selfr   r   r   r   r   r   r   s           .E:\Python Projects\keyboard\_keyboard_event.py__init__zKeyboardEvent.__init__   sH    $"!\CEt	""&t,DI     c                 Z     t         fddD              }t        j                  ||      S )Nc              3   \   K   | ]#  }|j                  d       s|t        |      f % yw)_N)
startswithgetattr).0attrr   s     r   	<genexpr>z(KeyboardEvent.to_json.<locals>.<genexpr>#   s7      
 5DD??3' 74&'  5Ds   ),)r   r   r   r   r   r   r   )ensure_ascii)dictjsondumps)r   r    attrss   `  r   to_jsonzKeyboardEvent.to_json"   s0     
 5D
 
 zz%l;;r   c                     dj                  | j                  xs dj                  | j                        | j                        S )NzKeyboardEvent({} {})z
Unknown {})formatr   r   r   )r   s    r   __repr__zKeyboardEvent.__repr__)   s4    %,,TYY-],:M:Mdnn:]_c_n_noor   c                 <   t        |t              xr | j                  |j                  k(  xrp | j                   xs( |j                   xs | j                  |j                  k(  xr7 | j                   xs( |j                   xs | j                  |j                  k(  S r   )
isinstancer
   r   r   r   )r   others     r   __eq__zKeyboardEvent.__eq__,   s    um, 5#3#33 NN"^%//&9^T^^u=^
 IIJUZZJ499

3J	
r   )NNNNN)F)__name__
__module____qualname__r   r   r   r   r   r   r   r   r%   r(   r,    r   r   r
   r
      s:    JIDDFII-<p	
r   r
   )r   r   r"   _canonical_namesr   r   
basestring	NameErrorstrKEY_DOWNKEY_UPobjectr
   r0   r   r   <module>r8      sF      = 	&
F &
  Js   & 00