+
     iI  c                   s   ^ RI t ^ RIHt ^ RIHtHtHtHt ^ RIH	t	 ^ RI
Ht ^ RIHtHtHtHtHt ]! RR7       ! R	 R
4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       t]! RR7       ! R R4      4       tR# )i    N)	dataclass)DictTupleOptionalCallable)InputCombination)MappingData)MessageTypeNameCapabilitiesKeyDeviceTypesT)Zfrozenc                   sJ   a  ] tR t^#t o ]P
                  tR tV 3R ltRt	V t
R# )UInputsDatac                sn   V P                   P                   R V P                   R2p\        \        P
                  ! RV4      4      pVP                  4        V FX  pVP                  4       pVP                  4       pWAVR P                  R4      ^,           ,          pWE8X  d   KL  VRV  RWR  2pKZ  	  V# )z	(uinputs=Z)z(\d+, )+NZ,z... )
Z	__class____name__uinputsZlistreZfinditerZreversestartendZfind)ZselfZstringZall_matchesZmatchr   r   s   &     L/usr/lib/python3.14/site-packages/inputremapper/gui/messages/message_data.py__str__ZUInputsData.__str__(   s    NN++,Idll^1E 2;;z6:; EKKME))+CEF^((-11E|v'tF4L>:F !     c                <   < V ^8  d   Qh/ S[ S[S[3,          ;R&   # )   r   )r   r   r	   Zformat__classdict__   "r   __annotate__ZUInputsData.__annotate__#   s      $$%% r    N)r   
__module____qualname____firstlineno__r   r   message_typer   __annotate_func____static_attributes____classdictcell__r      @r   r   r   #   s     &&L  r   r   c                   sH   a  ] tR t^:t o Rt]P                  tV 3R ltRt	V t
R# )
GroupsDataz?Message containing all available groups and their device types.c                r   )r   groups)r   r
   r   r   r   r   r   ZGroupsData.__annotate__:   s     
 k!"" r   r   N)r   r   r   r   __doc__r   r&   r   r    r!   r"   r#   r$   r   r%   r%   :   s     I%%L	  r   r%   c                   sH   a  ] tR t^Bt o Rt]P                  tV 3R ltRt	V t
R# )	GroupDatazBMessage with the active group and available presets for the group.c                sF   < V ^8  d   Qh/ S[ ;R&   S[S[ R3,          ;R&   # )r   Z	group_key.Zpresets)strr   r   r   r   r   ZGroupData.__annotate__B   s&     
 N  38_ r   r   N)r   r   r   r   r'   r   Zgroupr   r    r!   r"   r#   r$   r   r(   r(   B   s     L$$L	  r   r(   c                   sL   a  ] tR t^Kt o Rt]P                  tRtV 3R lt	Rt
V tR# )
PresetDatazCMessage with the active preset name and mapping names/combinations.Fc                sr   < V ^8  d   Qh/ S[ S[,          ;R&   S[ S[S[R3,          ,          ;R&   S[;R&   # )r   Zname.Zmappingsautoload)r   r   r   r   boolr   r   r   r   ZPresetData.__annotate__K   s?     
 4.  u[#-.//   r   r   N)r   r   r   r   r'   r   Zpresetr   r+   r    r!   r"   r#   r$   r   r*   r*   K   s!     M%%L H  r   r*   c                   sP   a  ] tR t^Ut o Rt]P                  tRtRt	V 3R lt
RtV tR# )
StatusDataz3Message with the strings and id for the status bar.Nc                s^   < V ^8  d   Qh/ S[ ;R&   S[S[,          ;R&   S[S[,          ;R&   # )r   Zctx_idmsgtooltip)intr   r)   r   r   r   r   ZStatusData.__annotate__U   s3     
 K  
#  c]! r   r   )r   r   r   r   r'   r   Z
status_msgr   r.   r/   r    r!   r"   r#   r$   r   r-   r-   U   s$     =))LC!G  r   r-   c                   sH   a  ] tR t^_t o Rt]P                  tV 3R ltRt	V t
R# )CombinationRecordedz,Message with the latest recoded combination.c                s$   < V ^8  d   Qh/ R;R&   # )r   r   Zcombinationr   r   r   r   r   Z CombinationRecorded.__annotate___   s     
 $# r   r   N)r   r   r   r   r'   r   Zcombination_recordedr   r    r!   r"   r#   r$   r   r1   r1   _   s     633L	  r   r1   c                   sH   a  ] tR t^gt o Rt]P                  tV 3R ltRt	V t
R# )CombinationUpdatezNMessage with the old and new combination (hash for a mapping) when it changed.c                s.   < V ^8  d   Qh/ R;R&   R;R&   # )r   r   Zold_combinationZnew_combinationr   r   r   r   r   ZCombinationUpdate.__annotate__g   s     
 ('  (' r   r   N)r   r   r   r   r'   r   Zcombination_updater   r    r!   r"   r#   r$   r   r2   r2   g   s     X11L	  r   r2   c                   sN   a  ] tR t^pt o Rt]P                  tR tV 3R lt	Rt
V tR# )UserConfirmRequestzEMessage for requesting a user response (confirm/cancel) from the gui.c                s    R # )Nr   )Z_s   &r   Z<lambda>ZUserConfirmRequest.<lambda>v   s    r   c                sH   < V ^8  d   Qh/ S[ ;R&   S[S[.R3,          ;R&   # )r   r.   Nrespond)r)   r   r,   r   r   r   r   ZUserConfirmRequest.__annotate__p   s)     
 
H  tfdl#4 r   r   N)r   r   r   r   r'   r   Zuser_confirm_requestr   r4   r    r!   r"   r#   r$   r   r3   r3   p   s     O33L&4G  r   r3   c                   sH   a  ] tR t^yt o Rt]P                  tV 3R ltRt	V t
R# )DoStackSwitchz0Command the stack to switch to a different page.c                s&   < V ^8  d   Qh/ S[ ;R&   # )r   Z
page_index)r0   r   r   r   r   ZDoStackSwitch.__annotate__y   s     
 O r   r   N)r   r   r   r   r'   r   Zdo_stack_switchr   r    r!   r"   r#   r$   r   r5   r5   y   s     :..L	  r   r5   )r   Zdataclassesr    Ztypingr   r   r   r   Z"inputremapper.configs.input_configr   Zinputremapper.configs.mappingr   Z(inputremapper.gui.messages.message_typesr   r   r	   r
   r   r   r%   r(   r*   r-   r1   r2   r3   r5   r   r   r   <module>r6      s1  ( 
 ! 2 2 ? 5  $  , $# # # $   $   $" " " $$ $ $ $( ( ( $5 5 5 $  r   