
    ai*                     j    S r S rS rS rS rS rS rS rSS	.S
 jrS r	SS jr
S rSS.S jrS rg))_init_properties_from_datakeyconfig_export_as_datakeyconfig_import_from_datakeyconfig_init_from_datakeyconfig_mergekeymap_init_from_datac                     U S-  $ )N  )levelss    Z/home/wildlama/Downloads/blender-5.1.2-linux-x64/5.1/scripts/modules/bl_keymap_utils/io.pyindentr      s    C<    c                 8    SSK JnJn  U" SU" SU 5      5      S   $ )N    )packunpackf)structr   r   )r   r   r   s      r   round_float_32r      s    ##tC|$Q''r   c                     [        U 5      n[        U 5      nUR                  S5      S   nU(       d  U$ [        S[	        U5      5       H1  n[        X5      n[        U5      nXa:X  d  M   SR                  XT5      s  $    U$ )N.      z	{:.{:d}f})r   repr	partitionrangelenroundformat)r   f_roundf_str
f_str_fracif_testf_test_rounds          r   repr_f32r&      sv    QGGE%a(J1c*o&q%f-"%%f00	 '
 Lr   c                    SU R                    S3SU R                   S3/nU R                  (       a  UR                  S5        O>S H8  n[	        X5      =n(       d  M  UR                  SUS S3US	:X  a  S
OS-   5        M:     U R
                  =n(       a  US:w  a  UR                  SUS S35        U R                  =n(       a  US:w  a  UR                  SUS S35        U R                  (       aA  U R                  S:X  a  U R                  S;   d  U R                  S:X  a  UR                  S5        SSR                  U5      -   S-   $ )Nz	"type": ''z
"value": 'z"any": True)shiftctrlaltoskeyhyper"sz": z-1TrueNONEz"key_modifier": 'ANYz"direction": 'KEYBOARD>   r3   PRESS	TEXTINPUTz"repeat": True{, })
typevalueanyappendgetattrkey_modifier	directionrepeatmap_typejoin)kmir/   attrmodr@   s        r   kmi_args_as_datarG   )   s+   
chhZq!
syyk#	A
 ww	!>Dc((s(2d1XT*cRidVLM ? cVm	&s1gQ/0]]"	"e);	#Ia=23
zz+		=M0M,HH'(1##r   c                    SSK Jn  S nUR                  R                  R	                  5        GH  nUS:w  d  M  [        X5      n[        Xc5      (       a  / n[        U S-   Xg5        U(       a  UR                  S5        UR                  SU S35        UR                  [        U S	-   5       S
35        UR                  U5        UR                  S5        UR                  [        U S	-   5       S[        U S-   5       35        AM  UR                  U5      (       d  M  U" U5      nUR                  SU SUS S[        U S-   5       35        GM"     g )Nr   )OperatorPropertiesc                    [        U [        [        [        [        45      (       a  [        U 5      $ [        U [        5      (       a  [        U 5      $ [        U SS5      (       a  [        [        U 5      5      $ [        SU < 35      e)N__len__Fz'Export key configuration: cannot write )
isinstancestrboolintsetr   floatr&   r>   tuple	Exception)r;   s    r   string_value8_kmi_properties_to_lines_recursive.<locals>.string_valueG   sj    ec4c233;u%%E?"UIu--e%%A%KLLr   rna_typer   (r.   ",
   [],
),
z("z", r/   )	bpy.typesrI   bl_rna
propertieskeysr>   rL   "_kmi_properties_to_lines_recursiver=   r   extendis_property_set)levelr_   linesrI   rT   pnamer;   
lines_tests           r   ra   ra   D   s*   ,M ""--224JJ.E%44
2519ePLL%LL2eWE!23LLF519$5#6!;<LL,LL(LLF519$5#6&QRBSAT!UV++E22$U+E7$uQituqy@Q?RSU! 5r   c                     Uc  g S[        U S-   5       S3/n[        XU5        [        U5      S:  a#  UR                  S5        UR	                  U5        g g )Nz"properties":
r   rZ   r[   )r   ra   r   r=   rb   )rd   	kmi_propsre   rg   s       r   _kmi_properties_to_linesrj   c   s[    %&*;)<cABJ&uD
:&!Z  r   c                     / n[        U S-   UR                  U5        UR                  SL a  UR                  [	        U 5       S35        U(       d  g SR                  U5      $ )Nr   Fz"active":False,
 )rj   r_   activer=   r   rC   )rd   rD   re   s      r   _kmi_attrs_or_nonern   n   sS    EUQY>
zzUu&==>775>r   F)all_keymapsc          	          " S S5      nU" 5       nU R                   R                  R                   H8  nU(       d  UR                  (       d  M  UR                  R	                  U5        M:     XR                   R
                  :w  a  [        XQ5      nO[        XU5      nUR                  S S9  [        USSS9 nUR                  n	SS	K
Jn
  U	" S
U
< S35        A
U	" S5        U GH  u  pkUR                  5       nU	" S5        U	" SUR                  S S35        U	" [        S5       S35        U	" SUR                  S S35        U	" SUR                   S S35        UR"                  (       a  U	" S5        U	" S5        U	" [        S5       S35        UR"                  nU	" S5        U	" [        S5       S35        UR$                   H  nU(       a  UR&                  nOUR(                  nU	" S5        [+        U5      n[-        SU5      nU	" SUS S35        Uc	  U	" S5        OU	" S[        S5       35        U	" U5        Uc	  U	" S5        ORU	" S5        U	" [        S5       S35        U	" U5        U	" [        S 5       5        U	" S[        S5       35        U	" S!5        U	" [        S5       5        M     U	" S"[        S5       35        U	" S[        S5       35        U	" S![        S#5       35        GM
     U	" S$5        U	" S%5        U	" S&5        U	" S'5        U	" S(5        U	" S)5        U	" S*5        U	" S+5        U	" S,5        U	" S-5        U	" S.5        U	" S/5        U	" S05        U	" S15        U	" S25        S S S 5        g ! , (       d  f       g = f)3Nc                       \ rS rSr/ rSrg)/keyconfig_export_as_data.<locals>.FakeKeyConfig   r
   N)__name__
__module____qualname____firstlineno__keymaps__static_attributes__r
   r   r   FakeKeyConfigrr      s    r   rz   c                      U S   R                   $ )Nr   name)ks    r   <lambda>*keyconfig_export_as_data.<locals>.<lambda>   s    adiir   )keywzutf-8)encodingr   )version_filezkeyconfig_version = 
zkeyconfig_data = \
[rW   r.   r/   rX   r   r7   z"space_type": 'r(   z, "region_type": 'z, "modal": Truez},
z	"items":
rY   rZ      r8   z,
   z	, None),
   r\   r[   r   z]
z

zif __name__ == "__main__":
z,    # Only add keywords that are supported.
z3    from bpy.app import version as blender_version
z    keywords = {}
z&    if blender_version >= (2, 92, 0):
z:        keywords["keyconfig_version"] = keyconfig_version
z    import os
z>    from bl_keymap_utils.io import keyconfig_import_from_data
z     keyconfig_import_from_data(
z9        os.path.splitext(os.path.basename(__file__))[0],
z        keyconfig_data,
z        **keywords,
z    )
)
keyconfigsuserrx   is_user_modifiedr=   defaultr   sortopenwritebpy.appr   rm   r}   r   
space_typeregion_typeis_modalkeymap_items	propvalueidnamerG   rn   )wmkcfilepathro   rz   	edited_kckmexport_keymapsfhfwr   _kc_xr   rD   kmi_idkmi_argskmi_datas                    r   r   r   x   s9    Imm  (("---$$R( ) 
]]"""(7(> /0	hg	."XX 	)
!,!145
#$'IBBsGBGGA;e$%&)c!""2=="3156%bnnQ%7q9:{{&'vJ&)c!"{{H~&)A ]]F ZZF3+C0-a5Rqz$%#tHuq	{+,8#|$uI&)c)*xL&)&v,-vJfQi["1 '2 v$%v$%v$%U (X 	5	
6

+, 	:;
AB
 !
45
JK

LM
./
GH
&'
"#
9S 
/	.	.s   9J/M11
M?c           	         [        U5      [        L d   eU HM  u  p#[        U5      [        L a)  U R                  U5        [        X5      n[	        XC5        M@   [        XU5        MO     g ! [         a*    [        SU SU R                  R                   S35         M  [         a  n[        SU< 35         S nAM  S nAff = f)NzWarning: property 'z' not found in item 'r(   z	Warning: )r:   listproperty_unsetr>   r   setattrAttributeErrorprint	__class__rt   rS   )
base_props
base_valuerE   r;   propsexs         r   r   r      s    
t###!;$%%d+J-E&u4*
%0 " " i+D61FzG[G[GdGdFeefgh *	"())*s   A))0B?	B?%B::B?c                 6   [        U R                  U(       a  SOS5      nU Ht  u  pEnU" U40 UD6nUc  M  UR                  SS5      (       d  SUl        UR                  SS 5      nUc  MI  UR                  n	[        U5      [        L d   e[        X5        Mv     g )N	new_modalnewrm   TFr_   )r>   r   getrm   r_   r:   r   r   )
r   km_itemsr   new_fn
kmi_idnamer   r   rD   kmi_props_datari   s
             r   r   r      s    R__Xk5IF,4(xZ,8,<<$//"
%\\,=N)NN	N+t333*9E -5r   c           	          U HV  u  p#nU R                   R                  " U40 UD6nUS   n[        U5      [        L d   e[	        XVUR                  SS5      S9  MX     g )NitemsmodalF)r   )rx   r   r:   r   r   r   )r   keyconfig_datakm_namekm_args
km_contentr   r   s          r   r   r     s]     +9&:ZZ^^G/w/g& H~%%%bW[[%5PQ +9r   )r   r   r   )keyconfig_versionc                    SS K nUR                  R                  nUR                  R	                  U 5      nUb  SSKJn  U" X5      n[        XQ5        U$ )Nr   r   )keyconfig_update)bpycontextwindow_managerr   r   
versioningr   r   )r}   r   r   r   r   r   r   s          r   r   r     sJ    
 		#	#B			4	 B$0).LR0Ir   c                    ^^ U R                    Vs1 s H  o"R                  iM     snmU R                    Vs/ s H  o"U 4PM     nnU T:w  a&  UR                  UU4S jTR                    5       5        U$ s  snf s  snf )z&note: kc1 takes priority over kc2
    c              3   P   >#    U  H  nUR                   T;  d  M  UT4v   M     g 7f)Nr|   ).0r   	kc1_nameskc2s     r   	<genexpr>"keyconfig_merge.<locals>.<genexpr>/  s*      
!wwi' RI!s   &&)rx   r}   rb   )kc1r   r   merged_keymapsr   s    `  @r   r   r   )  so     $';;/;R;/I*-++6+B3i+N6
cz 
kk
 	

  06s
   A4A9N)F)__all__r   r   r&   rG   ra   rj   rn   r   r   r   r   r   r   r
   r   r   <module>r      s_   (
$6V>! ?D hb* FR  KT $r   