
    o'e%                     n    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dS )    N   )
Properties)UIParser   )	qtproxies)createCodeIndentergetIndenter
write_code)CompilerCreatorPolicyc                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	
UICompilerc                     t          j        | t          j        t          j        t          j        t                                 d S N)r   __init__r   QtCoreQtGui	QtWidgetsr   selfs    ;lib/python3.11/site-packages/PyQt5/uic/Compiler/compiler.pyr   zUICompiler.__init__3   s;    $	 0)/#%:%<%<	> 	> 	> 	> 	>    c                 F    g t           _        t          j        |            d S r   )r   i18n_stringsr   resetr   s    r   r   zUICompiler.reset7   s     !#	tr   c                     |t           _        d S r   )r   i18n_context)r   contexts     r   
setContextzUICompiler.setContext;   s    !(	r   c                    t                      }d|_        |                    d           |                    d           |                    d           |                    d| j        z             |                                 |                    d|z             |                                 | 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DDrr-;<<</*<===L&&y*b276: ' < <  dk)	r   c                 z    t          d           t          d| j        z             t          j        |            d S )Nr    zself.retranslateUi(%s))r
   toplevelWidgetr   setDelayedPropsr   s    r   r3   zUICompiler.setDelayedPropsQ   s;    2+d.AABBB &&&&&r   c                    t                      }d|_        |                    d           |                    d| j        z             |                                 t
          j        r:|                    d           t
          j        D ]}|                    |           n|                    d           |                                 |                                 | j        | _	        | j	        
                                 d S )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8KKLLL! 	#NNKLLL+ " "q!!!!" NN6""" .r   c                 *   t          |           |                     ||          }| 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5..000? 	. 	.C .
+++ssCDDDD;,----!!ffIk+ + 	+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 A A A A A A A A 1 1 1 1 1 1I+ I+ I+ I+ I+ I+ I+ I+ I+ I+r   