
    hVf%                     f    d dl Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	m
Z
 ddlmZ  G d	 d
e      Zy)    N   )
Properties)UIParser   )	qtproxies)createCodeIndentergetIndenter
write_code)CompilerCreatorPolicyc                   6    e Zd Zd Zd Zd Zd Zd Zd Zd Z	y)	
UICompilerc                     t        j                  | t        j                  t        j                  t        j
                  t                      y N)r   __init__r   QtCoreQtGui	QtWidgetsr   selfs    d/var/www/html/software/conda/envs/catlas/lib/python3.12/site-packages/PyQt5/uic/Compiler/compiler.pyr   zUICompiler.__init__3   s/    $	 0 0)//##%:%<	>    c                 D    g t         _        t        j                  |        y r   )r   i18n_stringsr   resetr   s    r   r   zUICompiler.reset7   s    !#	tr   c                     |t         _        y r   )r   i18n_context)r   contexts     r   
setContextzUICompiler.setContext;   s
    !(	r   c                    t               }d|_        |j                  d       |j                  d       |j                  d       |j                  d| j                  z         |j	                          |j                  d|z         |j	                          | j
                  j                  ||ddd	      }||_        d
| j                  z  |_        |S )Nr   z*from PyQt5 import QtCore, QtGui, QtWidgets zclass Ui_%s(object):zdef setupUi(self, %s): FT)is_attributeno_instantiationzUi_%s)	r	   levelwriteuinameindentfactorycreateQObject	baseclassuiclass)r   	classname
widgetnameindenterws        r   createToplevelWidgetzUICompiler.createToplevelWidget>   s    =CDrr-;</*<=LL&&y*b276: ' <  dkk)	r   c                 t    t        d       t        d| j                  z         t        j                  |        y )Nr    zself.retranslateUi(%s))r
   toplevelWidgetr   setDelayedPropsr   s    r   r3   zUICompiler.setDelayedPropsQ   s+    2+d.A.AAB  &r   c                    t               }d|_        |j                  d       |j                  d| j                  z         |j	                          t
        j                  r8|j                  d       t
        j                  D ]  }|j                  |        n|j                  d       |j                          |j                          | j                  | _	        | j                  j                          y )Nr   r    zdef retranslateUi(self, %s):z._translate = QtCore.QCoreApplication.translatepass)r	   r$   r%   r2   r'   r   r   dedent	resources
_resourcessort)r   r.   ss      r   finalizezUICompiler.finalizeV   s    =r58K8KKL!!NNKL++ "q!" NN6" ..r   c                 0   t        |       | j                  ||      }| j                  j                  j	                          | j
                  D ]$  }|rt        d|d|       t        d|z         & t        |      |j                  |j                  dS )Nzfrom z import z	import %s)r-   r+   r*   )
r   parser(   _cpolicy_writeOutImportsr8   r
   strr+   r*   )r   input_streamoutput_streamfrom_importsresource_suffiximport_fromr/   ress           r   	compileUizUICompiler.compileUim   s    =)JJ|_5..0?? 	.C+sCD;,-		. "!fIIkk+ 	+r   N)
__name__
__module____qualname__r   r   r   r0   r3   r;   rG   r!   r   r   r   r   2   s%    >)&'
.+r   r   )sys
propertiesr   uiparserr   r    r   r.   r   r	   r
   qobjectcreatorr   r   r!   r   r   <module>rO      s+   R  #   A A 1I+ I+r   