+
    D#j='                    "   ^ RI Ht ^ RIHtHt ^ RIHt ^ RIHtH	t	 R t
R!tRRRRR	R
/tR R lt ! R R4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R4      t ! R R4      tR# )"    )annotations)AnyCallable)Settings)THEME_PREFERENCESnormalize_theme_preferencesystemSystemlightLightdarkDarkc                   V ^8  d   QhRR/# )   returnr    )formats   "c/home/user/overdeck-private-tests/subrouter-s5-systray-latest/modules/systray/ui/settings_dialog.py__annotate__r      s     	 	3 	    c                 n     ^ RI p V P                  RR4       ^ RIHp V#   \         d
    \
        u # i ; i)r   NGtkz3.0)r   )girequire_versiongi.repositoryr   	Exception_FallbackGtk)r   r   s     r   _load_gtk_modulesr      s7    
5%(%
 s     44c                  z    ] tR t^tRR R lltR R ltR R ltR R ltR	 R
 ltR R lt	R R lt
R R ltRtR# )_FallbackWidgetc                    V ^8  d   QhRRRR/# r   textstrr   Noner   )r   s   "r   r   _FallbackWidget.__annotate__   s     ) )S )$ )r   c                	V    Wn         Wn        R V n        R V n        . V n        . V n        R# TN)r#   labelvisible	sensitivechildrencss_classesselfr#   s   &&r   __init___FallbackWidget.__init__   s)    	
#%&(r   c                    V ^8  d   QhRRRR/# r"   r   )r   s   "r   r   r&   '   s      S T r   c                	    Wn         Wn        R # N)r#   r)   r.   s   &&r   set_text_FallbackWidget.set_text'   s    	
r   c                   V ^8  d   QhRR/# )r   r   r$   r   )r   s   "r   r   r&   +   s      # r   c                	    V P                   # r4   r#   r/   s   &r   get_text_FallbackWidget.get_text+   s    yyr   c                    V ^8  d   QhRRRR/# )r   r*   boolr   r%   r   )r   s   "r   r   r&   .   s     % %4 %D %r   c                	&    \        V4      V n        R # r4   )r>   r*   )r/   r*   s   &&r   set_visible_FallbackWidget.set_visible.   s    G}r   c                    V ^8  d   QhRRRR/# )r   r+   r>   r   r%   r   )r   s   "r   r   r&   1   s     ) )t ) )r   c                	&    \        V4      V n        R # r4   )r>   r+   )r/   r+   s   &&r   set_sensitive_FallbackWidget.set_sensitive1   s    ir   c                    V ^8  d   QhRRRR/# )r   childr   r   r%   r   )r   s   "r   r   r&   4   s     $ $ $ $r   c                	<    V P                   P                  V4       R # r4   r,   append)r/   rG   s   &&r   add_FallbackWidget.add4       U#r   c               $    V ^8  d   QhRRRRRR/# )r   rG   r   _argsr   r%   r   )r   s   "r   r   r&   7   s!     $ $ $S $T $r   c                	<    V P                   P                  V4       R # r4   rI   )r/   rG   rO   s   &&*r   
pack_start_FallbackWidget.pack_start7   rM   r   c                   V ^8  d   QhRR/# r   r   r%   r   )r   s   "r   r   r&   :   s      $ r   c                	    R V n         R# r(   )r*   r:   s   &r   show_all_FallbackWidget.show_all:   s	    r   )r,   r-   r)   r+   r#   r*   N )__name__
__module____qualname____firstlineno__r0   r5   r;   r@   rD   rK   rQ   rV   __static_attributes__r   r   r   r    r       s/    )%)$$ r   r    c                      ] tR t^>tRtR# )_FallbackLabelr   N)rZ   r[   r\   r]   r^   r   r   r   r`   r`   >   s    r   r`   c                  2   a  ] tR t^BtRR V 3R llltRtV ;t# )_FallbackBoxc               $    V ^8  d   QhRRRRRR/# )r   orientationz
int | Nonespacingintr   r%   r   )r   s   "r   r   _FallbackBox.__annotate__C   s!      J  D r   c                	@   < \         SV `  R R7       Wn        W n        R# rY   r9   N)superr0   rd   re   )r/   rd   re   	__class__s   &&&r   r0   _FallbackBox.__init__C   s    b!&r   rd   re   )Nr   )rZ   r[   r\   r]   r0   r^   __classcell__rk   s   @r   rb   rb   B   s      r   rb   c                  F   a  ] tR t^ItR V 3R lltR R ltR R ltRtV ;t# )_FallbackSwitchc                   V ^8  d   QhRR/# rT   r   )r   s   "r   r   _FallbackSwitch.__annotate__J   s      $ r   c                	6   < \         SV `  R R7       RV n        R# )rY   r9   FN)rj   r0   activer/   rk   s   &r   r0   _FallbackSwitch.__init__J   s    b!r   c                    V ^8  d   QhRRRR/# )r   ru   r>   r   r%   r   )r   s   "r   r   rs   N   s     # # #$ #r   c                	&    \        V4      V n        R # r4   )r>   ru   )r/   ru   s   &&r   
set_active_FallbackSwitch.set_activeN   s    6lr   c                   V ^8  d   QhRR/# )r   r   r>   r   )r   s   "r   r   rs   Q   s      D r   c                	    V P                   # r4   ru   r:   s   &r   
get_active_FallbackSwitch.get_activeQ   s    {{r   r~   )	rZ   r[   r\   r]   r0   rz   r   r^   rn   ro   s   @r   rq   rq   I   s     # r   rq   c                  h   a  ] tR t^UtR V 3R llt]R R l4       tR R ltR R ltR	 R
 lt	Rt
V ;t# )_FallbackSpinButtonc               (    V ^8  d   QhRRRRRRRR/# )r   minimumfloatmaximumstepr   r%   r   )r   s   "r   r    _FallbackSpinButton.__annotate__V   s(     $ $ $ $U $t $r   c                	   < \         SV `  R R7       \        V4      V n        \        V4      V n        \        V4      V n        \        V4      V n        R# ri   )rj   r0   r   r   r   r   value)r/   r   r   r   rk   s   &&&&r   r0   _FallbackSpinButton.__init__V   s?    b!W~W~$K	7^
r   c               (    V ^8  d   QhRRRRRRRR/# )r   r   r   r   r   r   r   r   )r   s   "r   r   r   ^   s,     + ++&++38+	+r   c                	    V ! WV4      # r4   r   )clsr   r   r   s   &&&&r   new_with_range"_FallbackSpinButton.new_with_range]   s     7T**r   c                    V ^8  d   QhRRRR/# )r   r   r   r   r%   r   )r   s   "r   r   r   c   s     H Hu H Hr   c           	     	v    \        V P                  \        V P                  \	        V4      4      4      V n        R # r4   )maxr   minr   r   r   )r/   r   s   &&r   	set_value_FallbackSpinButton.set_valuec   s#    s4<<u'FG
r   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   f   s      5 r   c                	    V P                   # r4   )r   r:   s   &r   	get_value_FallbackSpinButton.get_valuef   s    zzr   c                   V ^8  d   QhRR/# r   r   rf   r   )r   s   "r   r   r   i   s      # r   c                	,    \        V P                  4      # r4   )rf   r   r:   s   &r   get_value_as_int$_FallbackSpinButton.get_value_as_inti   s    4::r   )r   r   r   r   )rZ   r[   r\   r]   r0   classmethodr   r   r   r   r^   rn   ro   s   @r   r   r   U   s6    $ $ + +
H r   r   c                  R   a  ] tR t^mtR V 3R lltR R ltR R ltR R ltR	tV ;t	# )
_FallbackComboBoxTextc                   V ^8  d   QhRR/# rT   r   )r   s   "r   r   "_FallbackComboBoxText.__annotate__n   s     + +$ +r   c                	R   < \         SV `  R R7       . V n        . V n        RV n        R# ri   )rj   r0   _ids_labels
_active_idrv   s   &r   r0   _FallbackComboBoxText.__init__n   s(    b!!	"$&*r   c               $    V ^8  d   QhRRRRRR/# )r   idr$   r#   r   r%   r   )r   s   "r   r   r   t   s!     " " "C "D "r   c                	r    V P                   P                  V4       V P                  P                  V4       R # r4   )r   rJ   r   )r/   r   r#   s   &&&r   rJ   _FallbackComboBoxText.appendt   s&    		D!r   c                    V ^8  d   QhRRRR/# )r   r   r$   r   r%   r   )r   s   "r   r   r   x   s     ! ! ! !r   c                	6    WP                   9   d	   Wn        R # R # r4   )r   r   )r/   r   s   &&r   set_active_id#_FallbackComboBoxText.set_active_idx   s    ? O r   c                   V ^8  d   QhRR/# )r   r   z
str | Noner   )r   s   "r   r   r   |   s      z r   c                	    V P                   # r4   )r   r:   s   &r   get_active_id#_FallbackComboBoxText.get_active_id|   s    r   )r   r   r   )
rZ   r[   r\   r]   r0   rJ   r   r   r^   rn   ro   s   @r   r   r   m   s!    + +"! r   r   c                     a  ] tR t^tRR V 3R llltR R ltR R ltR R ltR	 R
 ltR R lt	R R lt
R R ltRtV ;t# )_FallbackDialogc                    V ^8  d   QhRRRR/# r   titler$   r   r%   r   )r   s   "r   r   _FallbackDialog.__annotate__   s     ' 'c '4 'r   c                	   < \         SV `  VR 7       Wn        RV n        RV n        RV n        . V n        \        4       V n        R# )r9   NF)	rj   r0   r   transient_formodal	destroyedbuttonsrb   _content)r/   r   rk   s   &&r   r0   _FallbackDialog.__init__   s>    e$
)-
.0$r   c                    V ^8  d   QhRRRR/# r   r   )r   s   "r   r   r      s      s t r   c                	    Wn         R # r4   r   )r/   r   s   &&r   	set_title_FallbackDialog.set_title   s    
r   c                    V ^8  d   QhRRRR/# )r   windowr   r   r%   r   )r   s   "r   r   r      s     $ $ $ $r   c                	    Wn         R # r4   )r   )r/   r   s   &&r   set_transient_for!_FallbackDialog.set_transient_for   s    #r   c                    V ^8  d   QhRRRR/# )r   r   r>   r   r%   r   )r   s   "r   r   r      s     ! !t ! !r   c                	&    \        V4      V n        R # r4   )r>   r   )r/   r   s   &&r   	set_modal_FallbackDialog.set_modal   s    %[
r   c               $    V ^8  d   QhRRRRRR/# )r   r)   r$   responserf   r   r%   r   )r   s   "r   r   r      s!     / / /s /t /r   c                	>    V P                   P                  W34       R # r4   )r   rJ   )r/   r)   r   s   &&&r   
add_button_FallbackDialog.add_button   s    U-.r   c                   V ^8  d   QhRR/# )r   r   rb   r   )r   s   "r   r   r      s      , r   c                	    V P                   # r4   )r   r:   s   &r   get_content_area _FallbackDialog.get_content_area   s    }}r   c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   r      s        S  r   c                	    \         # r4   )_RESPONSE_CANCELr:   s   &r   run_FallbackDialog.run   s    r   c                   V ^8  d   QhRR/# rT   r   )r   s   "r   r   r      s       r   c                	"    R V n         RV n        R# )FTN)r*   r   r:   s   &r   destroy_FallbackDialog.destroy   s    r   )r   r   r   r   r   r   r*   rX   )rZ   r[   r\   r]   r0   r   r   r   r   r   r   r   r^   rn   ro   s   @r   r   r      s5    ' '$!/  r   r   c                  V    ] tR t^t ! R R4      t ! R R4      t]t]t	]
t]t]t]tRtR# )r   c                      ] tR t^t^t^tRtR# )z_FallbackGtk.Orientationr   N)rZ   r[   r\   r]   VERTICAL
HORIZONTALr^   r   r   r   Orientation_FallbackGtk.Orientation   s    
r   r   c                      ] tR t^t]t]tRtR# )z_FallbackGtk.ResponseTyper   N)	rZ   r[   r\   r]   _RESPONSE_SAVEOKr   CANCELr^   r   r   r   ResponseType_FallbackGtk.ResponseType   s    !r   r   r   N)rZ   r[   r\   r]   r   r   r`   Labelrb   Boxrq   Switchr   
SpinButtonr   ComboBoxTextr   Dialogr^   r   r   r   r   r      s6     " " E
CF$J(LFr   r   c                      ] tR t^tRR R lltR R ltR R ltR R	 ltR
 R lt]	R R l4       t
]	R R l4       t]	R R l4       t]	R R l4       t]	RR R ll4       t]	R R l4       t]	R R l4       tRtR# )SettingsDialogNc          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
r   settingsr   on_savezCallable[[Settings], None]r   
Any | None
gtk_moduler   r%   r   )r   s   "r   r   SettingsDialog.__annotate__   s<       , "	
  
r   c                	t   Wn         W n        Ve   TM	\        4       V n        R V n        \        V P                  RR 4      p\        VR\        4      V n        \        VR\        4      V n	        V P                  V P                  RV4      V n        \        V P                  R4      '       dM   V P                  P                  RV P                  4       V P                  P                  RV P                  4       V P                  V P                  VP                  4      V n        V P#                  V P                  ^R^VP$                  4      V n        V P#                  V P                  ^^2^VP(                  4      V n        V P-                  V P                  VP.                  4      V n        V P3                  4        R # )	Nr   r   r   r   r   CancelSavei  )	_settings_on_saver   gtksavedgetattrr   _response_saver   _response_cancel_new_dialogdialoghasattrr   _new_switch
auto_closeauto_close_switch	_new_spinrefresh_interval_secondsrefresh_spinwarning_threshold_pctthreshold_spin_new_theme_combothemetheme_combo_build_content)r/   r   r   r   r   response_types   &&&&& r   r0   SettingsDialog.__init__   sS    "!+!7:=N=P&*
.$?%mT>J 'xAQ R&&txx]K4;;--KK""8T-B-BCKK""64+>+>?!%!1!1$((H<O<O!P NNHHb$H$E$E
 #nnHHaQ > >
  008>>Jr   c                   V ^8  d   QhRR/# rT   r   )r   s   "r   r   r      s      d r   c                	8   V P                   p\        VR 4      '       d   VP                  4        \        VRR4      p\	        V4      '       g   R# V! 4       pW0P
                  8X  d   V P                  4        \        VR4      '       d   VP                  4        R# R# )rV   r   Nr   )r  r	  rV   r  callabler  _handle_saver   )r/   r  r   r   s   &   r   openSettingsDialog.open   sw    6:&&OOfeT*}}5***69%%NN &r   c                    V ^8  d   QhRRRR/# )r   r   r   r   r%   r   )r   s   "r   r   r      s      h 4 r   c                	`   V P                   P                  VP                  4       V P                  P	                  VP
                  4       V P                  P	                  VP                  4       V P                  P                  \        VP                  4      4       V P                  4        R # r4   )r  rz   r  r  r   r  r  r  r  r   r   r  r  )r/   r   s   &&r   simulate_saveSettingsDialog.simulate_save   sz    ))(*=*=>##H$E$EF%%h&D&DE&&'A(..'QRr   c                   V ^8  d   QhRR/# rT   r   )r   s   "r   r   r      s     	$ 	$d 	$r   c           
     	   \        \        V P                  P                  4       4      \	        V P
                  P                  4       4      \	        V P                  P                  4       4      V P                  P                  \        V P                  P                  4       4      R 7      pWn        V P                  V4       R# ))r  r  r  last_tabr  N)r   r>   r  r   rf   r  r   r  r   r$  r   r  r   r  r  )r/   new_settingss   & r   r  SettingsDialog._handle_save   s    D22==?@%():):)D)D)F%G"%d&9&9&C&C&E"F^^,,,T-=-=-K-K-MN
 "
l#r   c                   V ^8  d   QhRR/# rT   r   )r   s   "r   r   r      s     ) ) )r   c                	   \        V P                  R R4      p\        VR^ 4      pRV P                  3RV P                  3RV P                  3RV P
                  33pRp\        V P                  RR4      p\        V4      '       d   V! 4       pV Fv  w  rgV P                  V P                  V^R7      pV P                  WP                  V P                  V4      4       V P                  W4       Vf   Ke  V P                  WH4       Kx  	  R# )	r   Nr   ThemezAuto-close popupzRefresh interval (seconds)z#Warning threshold (% remaining, 5h)r   )re   )r  r  r  r  r  r  r  r  _new_box_pack
_new_label)	r/   rd   
horizontalrowscontentr   
label_textcontrolrows	   &        r   r  SettingsDialog._build_content   s    dhht<[,:
d&&'!7!78)4+<+<=2D4G4GH	
 "4;;0BDI$%%&(G#'J--*b-ACJJsOODHHjABJJs$"

7( $(r   c               (    V ^8  d   QhRRRRRRRR/# )r   r  r   r   r$   r   r   r   r   )r   s   "r   r   r     s(       S   r   c                	(    V P                  VR 7      pVe%   \        VR4      '       d    VP                  V4       \        VR4      '       d   VP                  R4       V#   \         d    T P                  T4      p Lki ; i  \         d     LTi ; i)r   r   r   T)r   	TypeErrorr	  r   r   r   )r  r   r   r  s   &&& r   r  SettingsDialog._new_dialog  s    	'ZZeZ,F $9L)M)M((7 6;''T"  	'ZZ&F	'
  s"   A! B !B ?B BBc               $    V ^8  d   QhRRRRRR/# )r   r  r   ru   r>   r   r   )r   s   "r   r   r     s!       d s r   c                	H    V P                  4       pVP                  V4       V# r4   )r   rz   )r  ru   switchs   && r   r
  SettingsDialog._new_switch  s     &!r   c               $    V ^8  d   QhRRRRRR/# )r   r  r   r  r$   r   r   )r   s   "r   r   r     s!      c # # r   c                	    \        V R \        4      pV! 4       p\         F   pVP                  V\        V,          4       K"  	  VP                  \        V4      4       V# )r   )r  r   r   rJ   _THEME_LABELSr   r   )r  r  	combo_clscombotheme_ids   &&   r   r  SettingsDialog._new_theme_combo  sN    C1FG	)HLL=#:; *6u=>r   c               0    V ^8  d   QhRRRRRRRRRRRR/# )	r   r  r   r   rf   r   r   r   r   r   )r   s   "r   r   r   %  s<     
 


),
47
@C
	
r   c                	    \        V R \        4      p\        VRR4      p\        V4      '       d   V! WV4      pM	V! WV4      pVP                  V4       V# )r   r   N)r  r   r  r   )r  r   r   r   r   spin_clsr   spins   &&&&&   r   r  SettingsDialog._new_spin$  sV     3.AB +;TBN##!'D9DGd3Dur   c               (    V ^8  d   QhRRRRRRRR/# )r   r  r   rd   rf   re   r   r   )r   s   "r   r   r   2  s(     1 1c 1 1c 1# 1r   c                	l     V P                  WR 7      #   \         d    T P                  Y4      u # i ; i)rm   )r   r6  )r  rd   re   s   &&&r   r*  SettingsDialog._new_box1  s6    	177{7DD 	177;00	1    33c               $    V ^8  d   QhRRRRRR/# )r   r  r   r#   r$   r   r   )r   s   "r   r   r   9  s!     # # #3 #3 #r   c                	l     V P                  VR 7      #   \         d    T P                  T4      u # i ; i))r)   )r   r6  )r  r#   s   &&r   r,  SettingsDialog._new_label8  s5    	#9949(( 	#99T?"	#rK  c               $    V ^8  d   QhRRRRRR/# )r   parentr   rG   r   r%   r   )r   s   "r   r   r   @  s!      c # $ r   c                	x    \        V R 4      '       d   V P                  VRR^ 4       R# V P                  V4       R# )rQ   FN)r	  rQ   rK   )rP  rG   s   &&r   r+  SettingsDialog._pack?  s/    6<((eUE15JJur   )r  r  r  r   r  r  r  r  r  r  r  )NN)r   )rZ   r[   r\   r]   r0   r  r   r  r  staticmethodr  r
  r  r  r*  r,  r+  r^   r   r   r   r   r      s    @	$)(    
   
 
 1 1 # #  r   r   Ni)
__future__r   typingr   r   ui.settings_storer   ui.themer   r   r   r   r>  r   r    r`   rb   rq   r   r   r   r   r   r   r   r   <module>rY     s    "   & B  hW
F	 @	_ 	? 	o 	/ 0O &o B "R Rr   