
    Mwg                     J    d dl mZmZmZ d dlmZ dZdZdZ G d d      Z	d Z
y	)
    )Element
SubElementtostring)coordinate_to_tuplezurn:schemas-microsoft-com:vmlz'urn:schemas-microsoft-com:office:officez&urn:schemas-microsoft-com:office:excelc                   0    e Zd ZdZdZdZd Zd Zd Zd Z	y)ShapeWriterz!
    Create VML for comments
    Nc                     || _         y )N)comments)selfr
   s     U/var/www/horilla/myenv/lib/python3.12/site-packages/openpyxl/comments/shape_writer.py__init__zShapeWriter.__init__   s	         c                 ,   t        |dt        z  dt        z  di      }t        |dt        z  dt        z  dddi       t        |dt        z  dd	d
ddt        z  dddi      }t        |dt        z  ddi       t        |dt        z  dddt        z  di       y )Nz{%s}shapelayoutz{%s}exteditz	{%s}idmapdata1z{%s}shapetypeid_x0000_t202	coordsizez21600,21600z{%s}spt202pathzm,l,21600r21600,l21600,xez
{%s}stroke	joinstylemiter{%s}pathgradientshapeokt{%s}connecttyperect)r   officensvmlns)r   rootshape_layout
shape_types       r   add_comment_shapetypez!ShapeWriter.add_comment_shapetype   s    !$(9H(D#,u#4f"=?<)%vvs;	=   /% 7!%}!,m!*X!5u!')D!FG
 	:|e3k75KL:%%s%0&:	;r   c                     t        |      \  }}|dz  }|dz  }t        ||||      }|j                  dd|z         |j                  |       y )N   r   z_x0000_s%04d)r   _shape_factorysetappend)	r   r!   idxcoordheightwidthrowcolshapes	            r   add_comment_shapezShapeWriter.add_comment_shape0   sQ    &u-SqqsC7		$,-Er   c                    t        |d      st        d      }|j                  dt        z        }|D ]  }|j	                  |        |j                  dt        z        }|| j                  |       t        | j                  d      D ]1  \  }\  }}| j                  ||||j                  |j                         3 t        |      S )Nfindallxmlz{%s}shape[@type='#_x0000_t202']z {%s}shapetype[@id='_x0000_t202']i  )hasattrr   r3   r    removefindr$   	enumerater
   r1   r,   r-   r   )r   r!   r
   cshape_typesr*   r+   comments           r   writezShapeWriter.write:   s    tY'5>D << AE IJ 	AKKN	 ii BU JK&&t,%.t}}d%C 	T!C!%""4eW^^W]]S	T ~r   )
__name__
__module____qualname____doc__vmlvml_pathr   r$   r1   r<    r   r   r   r      s'     CH!;&r   r   c                 ~   dj                  ||      }ddd|dddt        z  d	i}t        d
t        z  |      }t	        |dt        z  ddi       t	        |dt        z  ddd       t	        |dt        z  dt        z  di       t	        |dt        z  ddi      }t	        |dddi       t	        |dt
        z  ddi      }t	        |dt
        z         t	        |dt
        z         dt	        |dt
        z        _        t        |       t	        |dt
        z        _        t        |      t	        |d t
        z        _        |S )!Nzuposition:absolute; margin-left:59.25pt;margin-top:1.5pt;width:{width}px;height:{height}px;z-index:1;visibility:hidden)r,   r-   typez#_x0000_t202style	fillcolorz#ffffe1z{%s}insetmodeautoz	{%s}shapez{%s}fillcolor2z
{%s}shadowblackr   )colorobscuredr   r   nonez{%s}textboxzmso-direction-alt:autodivztext-align:leftz{%s}ClientData
ObjectTypeNotez{%s}MoveWithCellsz{%s}SizeWithCellsFalsez{%s}AutoFillz{%s}Rowz
{%s}Column)formatr   r   r    r   excelnstextstr)	r.   columnr,   r-   rF   attrsr0   textboxclient_datas	            r   r'   r'   O   sZ   ! #)&/4 #) #6 
 	Y("F	E K%'/Euj5()$&ulU* c24uj5(!H,f57 5!#;<>Gw):;<U$4w$>*F35K{/'9:{/'9:=DJ{NW45:8;CJ{I/05;>v;J{L7238Lr   N)openpyxl.xml.functionsr   r   r   openpyxl.utilsr   r    r   rS   r   r'   rC   r   r   <module>r\      s3     /'4
2< <~!r   