
    @OOfe                     `    d dl Z  G d de j                        Z G d de j                        Zy)    Nc                       e Zd Zd Zd Zy)Tabc                     t        j                  |d      }t        j                  |dd      }t        j                  ||      }t         j                  j                  | |       || _        || _        y)zL
        onclick is called on click with the tab offset as argument
        center)align)relatived   )r   widthN)urwidTextPaddingAttrWrap
WidgetWrap__init__offsetonclick)selfr   contentattrr   ps         ]/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/mitmproxy/tools/console/tabs.pyr   zTab.__init__   s[     JJwh/MM!83DENN1d#!!$*    c                 R    |dk(  r"|dk(  r| j                  | j                         yy y )Nzmouse press   T)r   r   )r   sizeeventbuttoncolrowfocuss          r   mouse_eventzTab.mouse_event   s+    M!fkLL% '2!r   N)__name__
__module____qualname__r   r!    r   r   r   r      s    	r   r   c                   2     e Zd Zd fd	Zd Zd Zd Z xZS )Tabsc                     t         |   d       || _        || _        | j	                          t        j                  g       | _        y )N )superr   
tab_offsettabsshowr   Pile_w)r   r,   r+   	__class__s      r   r   zTabs.__init__   s6    $			**R.r   c                 2    || _         | j                          y )N)r+   r-   )r   r   s     r   
change_tabzTabs.change_tab   s     		r   c                 L   t        | j                        }|dk(  r"| j                  | j                  dz   |z         nM|dk(  r"| j                  | j                  dz   |z         n&|dk(  r!| j                  | j                  dz
  |z         | j                  j                  ||      S )Nm_nextr   rightleft)lenr,   r2   r+   r/   keypress)r   r   keyns       r   r8   zTabs.keypress"   s    		N(?OOT__q0A56G^OOT__q0A56F]OOT__q0A56wwc**r   c           	         | j                   sy g }t        t        | j                               D ]  } | j                   |   d          }|| j                  t        | j                         z  k(  r(|j	                  t        ||d| j                               g|j	                  t        ||d| j                                t        j                  |d      }t        j                   | j                   | j                  t        | j                         z     d          |      | _
        | j                  j                  d       y )Nr   headingheading_inactiver   )dividechars)bodyheaderr?   )r,   ranger7   r+   appendr   r2   r   ColumnsFramer/   	set_focus)r   headersitxts       r   r-   z	Tabs.show,   s    yys499~& 	QA!$))A,q/#CDOOc$))n44s1c9dooFGs1c+=tOP	Q --Q7++?4??S^;<Q?A'
 	&!r   )r   )r"   r#   r$   r   r2   r8   r-   __classcell__)r0   s   @r   r'   r'      s    !+"r   r'   )r   r   r   r'   r%   r   r   <module>rJ      s,    %

 $%"5 %"r   