
    >wg                     :    d dl mZ  G d dej                        Zy)   )	xmlwriterc                   X     e Zd ZdZ fdZd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Z xZS )CustomzM
    A class for writing the Excel XLSX Custom Workbook Property file.


    c                 F    t         t        |           g | _        d| _        y)z
        Constructor.

        r   N)superr   __init__
propertiespid)self	__class__s    H/var/www/horilla/myenv/lib/python3.12/site-packages/xlsxwriter/custom.pyr   zCustom.__init__   s      	fd$&    c                     || _         y )N)r	   )r   r	   s     r   _set_propertieszCustom._set_properties%   s	    $r   c                     | j                          | j                          | j                  d       | j                          y )N
Properties)_xml_declaration_write_properties_xml_end_tag
_xml_close)r   s    r   _assemble_xml_filezCustom._assemble_xml_file/   s6     	 ,' 	r   c                     d}|dz   }|dz   }d|fd|fg}| j                  d|       | j                  D ]  }| j                  |        y )Nz6http://schemas.openxmlformats.org/officeDocument/2006/zcustom-propertiesdocPropsVTypesxmlnszxmlns:vtr   )_xml_start_tagr	   _write_property)r   schemar   xmlns_vt
attributescustom_propertys         r   r   zCustom._write_propertiesB   si    I,,,, e"


 	L*5# 	2O  1	2r   c                    d}|\  }}}| xj                   dz  c_         d|fd| j                   fd|fg}| j                  d|       |dk(  r| j                  |       nV|dk(  r| j                  |       n?|d	k(  r| j	                  |       n(|d
k(  r| j                  |       n| j                  |       | j                  d       y )Nz&{D5CDD505-2E9C-101B-9397-08002B2CF9AE}r   fmtidr
   nameproperty
number_intnumberdatebool)r
   r   _write_vt_i4_write_vt_r8_write_vt_filetime_write_vt_bool_write_vt_lpwstrr   )r   r    r"   r#   valueproperty_typer   s          r   r   zCustom._write_propertyS   s     9%4"e]A eDHHTN

 	J
3L(e$h&e$f$##E*f$& !!%(*%r   c                 (    | j                  d|       y )Nz	vt:lpwstr_xml_data_elementr   r.   s     r   r-   zCustom._write_vt_lpwstru   s    {E2r   c                 (    | j                  d|       y )Nzvt:filetimer1   r3   s     r   r+   zCustom._write_vt_filetimey   s    }e4r   c                 (    | j                  d|       y )Nzvt:i4r1   r3   s     r   r)   zCustom._write_vt_i4}       w.r   c                 (    | j                  d|       y )Nzvt:r8r1   r3   s     r   r*   zCustom._write_vt_r8   r6   r   c                 6    |rd}nd}| j                  d|       y )Ntruefalsezvt:boolr1   r3   s     r   r,   zCustom._write_vt_bool   s!     EEy%0r   )__name__
__module____qualname____doc__r   r   r   r   r   r-   r+   r)   r*   r,   __classcell__)r   s   @r   r   r      s;    	%&2" &D35//1r   r   N) r   	XMLwriterr    r   r   <module>rC      s    @1Y   @1r   