+
    D#jt)                    L   ^ RI Ht ^ RIHtHt ^ RIHt ^ RIHt ^ RI	H
t
Ht ^t^dtR#tR$t]
R]R/tR R	 ltR
 R ltR R ltR R l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"# )%    )annotations)CallableMapping)Any)AccountSnapshot)	WINDOW_5H	WINDOW_7D5h7dc                   V ^8  d   QhRR/# )   returnr    )formats   "a/home/user/overdeck-private-tests/subrouter-s5-systray-latest/modules/systray/ui/limits_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                    V ^8  d   QhRRRR/# )r   snapshotr   r   tuple[str, ...]r   )r   s   "r   r   r   !   s       _ r   c                    . pV P                   e   VP                  \        4       V P                  e   VP                  \        4       \        V4      # N)primary_used_pctappendr   secondary_used_pctr	   tuple)r   windowss   & r   _available_windowsr&   !   sA    G  ,y!"".y!>r   c               $    V ^8  d   QhRRRRRR/# )r   r   r   windowstrr   
int | Noner   )r   s   "r   r   r   *   s!     ( (_ (c (j (r   c                    V\         8X  d   V P                  pMV P                  pVf   R # \        ^ \	        ^d^dV,
          4      4      # r    )r   r!   r#   maxmin)r   r(   useds   && r   _remaining_pctr/   *   s@    ((**|q#c3:&''r   c                    V ^8  d   QhRRRR/# )r   valueintr   r   )r   s   "r   r   r   4   s     7 7# 7# 7r   c                >    \        \        \        \        V 4      4      # r    )r,   _CAP_MIN_PCTr-   _CAP_MAX_PCT)r1   s   &r   _clamp_cap_pctr6   4   s    |Su566r   c                    V ^8  d   QhRRRR/# )r   textr)   r   r*   r   )r   s   "r   r   r   8   s     
" 
" 
"
 
"r   c                    V P                  4       pV'       g   R #  \        V4      pT^ 8X  d   R # \        T4      #   \         d     R # i ; ir    )stripr2   
ValueErrorr6   )r8   strippedparseds   &  r   _read_cap_pctr>   8   sL    zz|HX {&!!	  s   ; A
	A
c                  z    ] tR t^Et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   r8   r)   r   Noner   )r   s   "r   r   _FallbackWidget.__annotate__F   s     & &S &$ &r   c                	H    Wn         Wn        R V n        R V n        . V n        R# TN)r8   labelvisible	sensitivechildrenselfr8   s   &&r   __init___FallbackWidget.__init__F   s!    	
#%r   c                    V ^8  d   QhRRRR/# rB   r   )r   s   "r   r   rD   M   s      S T r   c                	    Wn         Wn        R # r    )r8   rG   rK   s   &&r   set_text_FallbackWidget.set_textM   s    	
r   c                   V ^8  d   QhRR/# )r   r   r)   r   )r   s   "r   r   rD   Q   s      # r   c                	    V P                   # r    r8   rL   s   &r   get_text_FallbackWidget.get_textQ   s    yyr   c                    V ^8  d   QhRRRR/# )r   rH   boolr   rC   r   )r   s   "r   r   rD   T   s     % %4 %D %r   c                	&    \        V4      V n        R # r    )rZ   rH   )rL   rH   s   &&r   set_visible_FallbackWidget.set_visibleT   s    G}r   c                    V ^8  d   QhRRRR/# )r   rI   rZ   r   rC   r   )r   s   "r   r   rD   W   s     ) )t ) )r   c                	&    \        V4      V n        R # r    )rZ   rI   )rL   rI   s   &&r   set_sensitive_FallbackWidget.set_sensitiveW   s    ir   c                    V ^8  d   QhRRRR/# )r   childr   r   rC   r   )r   s   "r   r   rD   Z   s     $ $ $ $r   c                	<    V P                   P                  V4       R # r    rJ   r"   )rL   rc   s   &&r   add_FallbackWidget.addZ       U#r   c               $    V ^8  d   QhRRRRRR/# )r   rc   r   _argsr   rC   r   )r   s   "r   r   rD   ]   s!     $ $ $S $T $r   c                	<    V P                   P                  V4       R # r    re   )rL   rc   rj   s   &&*r   
pack_start_FallbackWidget.pack_start]   rh   r   c                   V ^8  d   QhRR/# r   r   rC   r   )r   s   "r   r   rD   `   s      $ r   c                	    R V n         R# rF   )rH   rV   s   &r   show_all_FallbackWidget.show_all`   s	    r   )rJ   rG   rI   r8   rH   N )__name__
__module____qualname____firstlineno__rM   rQ   rW   r\   r`   rf   rl   rq   __static_attributes__r   r   r   r@   r@   E   s/    &%)$$ r   r@   c                      ] tR t^dtRtR# )_FallbackLabelr   Nru   rv   rw   rx   ry   r   r   r   r{   r{   d       r   r{   c                  2   a  ] tR t^ht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   orientationr*   spacingr2   r   rC   r   )r   s   "r   r   _FallbackBox.__annotate__i   s!      J  D r   c                	@   < \         SV `  R R7       Wn        W n        R# rt   rU   N)superrM   r   r   )rL   r   r   	__class__s   &&&r   rM   _FallbackBox.__init__i   s    b!&r   r   r   )Nr   )ru   rv   rw   rx   rM   ry   __classcell__r   s   @r   r   r   h   s      r   r   c                      ] tR t^otRtR# )_FallbackEntryr   Nr|   r   r   r   r   r   o   r}   r   r   c                  j   a  ] tR t^stR V 3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t
V ;t# )_FallbackComboBoxTextc                   V ^8  d   QhRR/# ro   r   )r   s   "r   r   "_FallbackComboBoxText.__annotate__t   s     + +$ +r   c                	R   < \         SV `  R R7       . V n        . V n        RV n        R# r   )r   rM   _ids_labels
_active_id)rL   r   s   &r   rM   _FallbackComboBoxText.__init__t   s(    b!!	"$&*r   c               $    V ^8  d   QhRRRRRR/# )r   idr)   r8   r   rC   r   )r   s   "r   r   r   z   s!     " " "C "D "r   c                	r    V P                   P                  V4       V P                  P                  V4       R # r    )r   r"   r   )rL   r   r8   s   &&&r   r"   _FallbackComboBoxText.appendz   s&    		D!r   c                    V ^8  d   QhRRRR/# )r   r   r)   r   rC   r   )r   s   "r   r   r   ~   s     ! ! ! !r   c                	6    WP                   9   d	   Wn        R # R # r    )r   r   )rL   r   s   &&r   set_active_id#_FallbackComboBoxText.set_active_id~   s    ? O r   c                   V ^8  d   QhRR/# )r   r   
str | Noner   )r   s   "r   r   r      s      z r   c                	    V P                   # r    )r   rV   s   &r   get_active_id#_FallbackComboBoxText.get_active_id   s    r   c               $    V ^8  d   QhRRRRRR/# )r   signalr)   callbackzCallable[..., Any]r   rC   r   )r   s   "r   r   r      s"     . .c .-? .D .r   c                	$    VR 8X  d	   W n         R# R# )changedN)_changed_callback)rL   r   r   s   &&&r   connect_FallbackComboBoxText.connect   s    Y%-" r   c                   V ^8  d   QhRR/# ro   r   )r   s   "r   r   r      s      d r   c                	V    \        V R R4      p\        V4      '       d   V! V 4       R# R# )r   N)getattrcallable)rL   r   s   & r   emit_changed"_FallbackComboBoxText.emit_changed   s(    4!4d;HTN r   )r   r   r   r   )ru   rv   rw   rx   rM   r"   r   r   r   r   ry   r   r   s   @r   r   r   s   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   rC   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# )rU   NF)	r   rM   r   transient_formodal	destroyedbuttonsr   _content)rL   r   r   s   &&r   rM   _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 # r    r   )rL   r   s   &&r   	set_title_FallbackDialog.set_title   s    
r   c                    V ^8  d   QhRRRR/# )r   r(   r   r   rC   r   )r   s   "r   r   r      s     $ $ $ $r   c                	    Wn         R # r    )r   )rL   r(   s   &&r   set_transient_for!_FallbackDialog.set_transient_for   s    #r   c                    V ^8  d   QhRRRR/# )r   r   rZ   r   rC   r   )r   s   "r   r   r      s     ! !t ! !r   c                	&    \        V4      V n        R # r    )rZ   r   )rL   r   s   &&r   	set_modal_FallbackDialog.set_modal   s    %[
r   c               $    V ^8  d   QhRRRRRR/# )r   rG   r)   responser2   r   rC   r   )r   s   "r   r   r      s!     / / /s /t /r   c                	>    V P                   P                  W34       R # r    )r   r"   )rL   rG   r   s   &&&r   
add_button_FallbackDialog.add_button   s    U-.r   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   r      s      , r   c                	    V P                   # r    )r   rV   s   &r   get_content_area _FallbackDialog.get_content_area   s    }}r   c                   V ^8  d   QhRR/# )r   r   r2   r   )r   s   "r   r   r      s        S  r   c                	    \         # r    )_RESPONSE_CANCELrV   s   &r   run_FallbackDialog.run   s    r   c                   V ^8  d   QhRR/# ro   r   )r   s   "r   r   r      s       r   c                	"    R V n         RV n        R# )FTN)rH   r   rV   s   &r   destroy_FallbackDialog.destroy   s    r   )r   r   r   r   r   r   rH   rs   )ru   rv   rw   rx   rM   r   r   r   r   r   r   r   ry   r   r   s   @r   r   r      s5    ' '$!/  r   r   c                  R    ] tR t^t ! R R4      t ! R R4      t]t]t	]
t]t]tRtR# )r   c                      ] tR t^t^t^tRtR# )z_FallbackGtk.Orientationr   N)ru   rv   rw   rx   VERTICAL
HORIZONTALry   r   r   r   Orientation_FallbackGtk.Orientation   s    
r   r   c                      ] tR t^t]t]tRtR# )_FallbackGtk.ResponseTyper   N)	ru   rv   rw   rx   _RESPONSE_SAVEOKr   CANCELry   r   r   r   ResponseTyper      s    !r   r   r   N)ru   rv   rw   rx   r   r   r{   Labelr   Boxr   Entryr   ComboBoxTextr   Dialogry   r   r   r   r   r      s1     " " E
CE(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t	R R l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# )LimitsDialogNc               4    V ^8  d   QhRRRRRRRRR	R
RR
RR/# )r   slugr)   r   r   capszMapping[str, int]on_savez!Callable[[str, int | None], None]r   
Any | None
gtk_moduler   rC   r   )r   s   "r   r   LimitsDialog.__annotate__   sP     ( (( "(  	(
 3( "( ( 
(r   c                	   Wn         W n        W0n        W@n        \	        V4      V 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 2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4      V n        V P-                  V P                  4      V n        V P1                  4        V P3                  V P&                  P5                  4       4       V P&                  eC   \!        V P&                  R	4      '       d'   V P&                  P7                  R
V P8                  4       \;        V P
                  4      p\!        V P                  R4      '       d*    V P                  P=                  V P                  V4       R # R #   \>         d     R # i ; i)Nr   r   r   u   Limits — r   CancelSavert   r   r   set_response_sensitive) _slug	_snapshot_caps_on_saver&   _windowsr   gtksavedr   r   _response_saver   _response_cancel_new_dialogdialoghasattrr   _new_window_combowindow_combo
_new_labelremaining_label
_new_entry	cap_entry_build_content_sync_for_windowr   r   _on_window_changedrZ   r   r   )	rL   r   r   r   r   r   r   response_typesave_sensitives	   &&&&&&&  r   rM   LimitsDialog.__init__   s    
!
*84!+!7:=N=P48
.$?%mT>J 'xAQ R&&txx;tf1E}U4;;--KK""8T-B-BCKK""64+>+>? 22488T]]K#txx<2d//==?@(WT5F5F	-R-R%%i1H1HIdmm,4;; 8992243F3FW :  s   <&I& &I54I5c                   V ^8  d   QhRR/# ro   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# )rq   r   Nr   )r  r  rq   r   r   r  _handle_saver   )rL   r  r   r   s   &   r   openLimitsDialog.open   sw    6:&&OOfeT*}}5***69%%NN &r   c               $    V ^8  d   QhRRRRRR/# )r   r(   r)   cap_textr   rC   r   )r   s   "r   r   r      s(        
	r   c                	    V P                   P                  V4       V P                  V4       V P                  P	                  V4       V P                  4        R # r    )r	  r   r  r  rQ   r  )rL   r(   r  s   &&&r   simulate_saveLimitsDialog.simulate_save   sD    
 	''/f%)r   c                   V ^8  d   QhRR/# ro   r   )r   s   "r   r   r     s     ' 'd 'r   c                	    V P                   P                  4       pVf   R # \        V P                  P	                  4       4      pW3V n        V P                  W4       R # r    )r	  r   r>   r  rW   r  r   )rL   r(   cap_pcts   &  r   r  LimitsDialog._handle_save  sK    ""002> 7 7 9:&
f&r   c                    V ^8  d   QhRRRR/# )r   _combor   r   rC   r   )r   s   "r   r   r   
  s     A A A Ar   c                	X    V P                  V P                  P                  4       4       R # r    )r  r	  r   )rL   r#  s   &&r   r  LimitsDialog._on_window_changed
  s    d//==?@r   c                    V ^8  d   QhRRRR/# )r   r(   r   r   rC   r   )r   s   "r   r   r     s     O Oz Od Or   c                	   Vf9   V P                   P                  R4       V P                  P                  R4       R # \        V P                  V4      pVe!   V P                   P                  RV R24       MV P                   P                  R4       V P
                  P                  V4      pV P                  P                  Ve   \        V4      4       R # R4       R # )Nrt   znow: z% remaining)r  rQ   r  r/   r   r   getr)   )rL   r(   	remainingexistings   &&  r   r  LimitsDialog._sync_for_window  s    >  ))"-NN##B'"4>>6:	   ))E)K*HI  ))"-::>>&)1EHN2Nr   c                   V ^8  d   QhRR/# ro   r   )r   s   "r   r   r     s     2 2 2r   c                	   \        V P                  R R4      p\        VR^ 4      pRp\        V P                  RR4      p\        V4      '       d   V! 4       pVf   R# V P	                  V P                  V^R7      pV P                  WPP                  V P                  R4      4       V P                  WPP                  4       V P                  W54       V P	                  V P                  V^R7      pV P                  W`P                  V P                  R4      4       V P                  W`P                  4       V P                  W`P                  V P                  R4      4       V P                  W64       V P                  W0P                  4       R# )r   Nr   r   )r   Windowz Stop when remaining falls below:%)
r   r  r  r   _new_box_packr
  r	  r  r  )rL   r   
horizontalcontentr   
window_rowcap_rows   &      r   r  LimitsDialog._build_content  s%   dhht<[,:
"4;;0BDI$%%&(G?]]488Z]D


:txxBC

:001

7'--*b-A

7OODHH6XYZ

7NN+

7OODHHc:;

7$

7001r   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   2  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  LimitsDialog._new_dialog1  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   r%   r   r   r   )r   s   "r   r   r   A  s!      s _  r   c                	    \        V R \        4      pV! 4       pV F   pVP                  V\        V,          4       K"  	  V'       d   VP	                  V^ ,          4       V# )r   )r   r   r"   _WINDOW_LABELSr   )r  r%   	combo_clscombor(   s   &&   r   r  LimitsDialog._new_window_combo@  sO    C1FG	FLL!78 
+r   c                    V ^8  d   QhRRRR/# )r   r  r   r   r   )r   s   "r   r   r   K  s        r   c                	"    V P                  4       # r    )r   )r  s   &r   r  LimitsDialog._new_entryJ  s    yy{r   c               (    V ^8  d   QhRRRRRRRR/# )r   r  r   r   r2   r   r   r   )r   s   "r   r   r   O  s(     1 1c 1 1c 1# 1r   c                	l     V P                  WR 7      #   \         d    T P                  Y4      u # i ; i)r   )r   r9  )r  r   r   s   &&&r   r0  LimitsDialog._new_boxN  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   r8   r)   r   r   )r   s   "r   r   r   V  s!     # # #3 #3 #r   c                	l     V P                  VR 7      #   \         d    T P                  T4      u # i ; i))rG   )r   r9  )r  r8   s   &&r   r
  LimitsDialog._new_labelU  s5    	#9949(( 	#99T?"	#rG  c               $    V ^8  d   QhRRRRRR/# )r   parentr   rc   r   rC   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# )rl   FN)r  rl   rf   )rL  rc   s   &&r   r1  LimitsDialog._pack\  s/    6<((eUE15JJur   )r   r   r  r  r   r   r   r  r  r  r  r  r	  )NN)r   )ru   rv   rw   rx   rM   r  r  r  r  r  r  staticmethodr  r  r  r0  r
  r1  ry   r   r   r   r   r      s    (T'AO2.       1 1 # #  r   r   Ni)
__future__r   collections.abcr   r   typingr   health_clientr   limit_warningr   r	   r4   r5   r   r   r=  r   r&   r/   r6   r>   r@   r{   r   r   r   r   r   r   r   r   r   <module>rV     s    " -  ) .  tt	(7
" >	_ 	? 	_ 	O 8o B  a ar   