Ë
    FU h2  ã                   ó.   — d dl Z d dlmZ  G d„ de«      Zy)é    N)Úwarnc                   ó¨   ‡ — e Zd ZdZˆ fd„Zd„ Zed„ «       Zed„ «       Zed„ «       Z	ed„ «       Z
ed„ «       Zed	„ «       Zed
„ «       Zed„ «       Zˆ xZS )ÚShapez>
    A class for to represent Excel XLSX shape objects.


    c                 óâ  •— t         t        | �  «        || _        || _        d| _        d| _        d| _        d| _        d| _	        d| _
        d| _        d| _        d| _        d| _        d| _        d| _        g | _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        | jA                  |«       y)z
        Constructor.

        r   Ú é   éÿÿÿÿNF)!Úsuperr   Ú__init__ÚnameÚ
shape_typeÚconnectÚdrawingÚedit_asÚidÚtextÚtextlinkÚstencilÚelementÚstartÚstart_indexÚendÚ	end_indexÚadjustmentsÚ
start_sideÚend_sideÚflip_hÚflip_vÚrotationÚtext_rotationÚtextboxÚalignÚfillÚfontÚformatÚlineÚurl_rel_indexÚtipÚ_set_options)Úselfr   r   ÚoptionsÚ	__class__s       €úH/var/www/timesheet/venv/lib/python3.12/site-packages/xlsxwriter/shape.pyr   zShape.__init__   sï   ø€ ô
 	Œe�TÑ#Ô%ØˆŒ	Ø$ˆŒØˆŒØˆŒØˆŒØˆŒØˆŒ	ØˆŒØˆŒØˆŒØˆŒ
ØˆÔØˆŒØˆŒØˆÔØˆŒØˆŒØˆŒØˆŒØˆŒØˆÔØˆŒàˆŒ
ØˆŒ	ØˆŒ	ØˆŒØˆŒ	Ø!ˆÔØˆŒà×Ñ˜'Õ"ó    c                 óÄ  — | j                  |j                  d«      «      | _        | j                  |j                  d«      «      | _        | j                  |j                  d«      «      | _        | j                  |j                  d«      «      | _        | j                  |j                  d«      «      | _
        |j                  dd«      | _        |j                  dd	«      | _        | j                  j                  d
«      r | j                  j                  d
«      | _        |j                  d«      r| j                  |d   «      | _
        | j                  rd | _        y y )Nr"   r#   r$   Úgradientr&   r    r   r   r   ú=Úborder)Ú_get_align_propertiesÚgetr"   Ú_get_fill_propertiesr#   Ú_get_font_propertiesr$   Ú_get_gradient_propertiesr0   Ú_get_line_propertiesr&   r    r   Ú
startswithÚlstrip)r*   r+   s     r-   r)   zShape._set_optionsF   s  € Ø×/Ñ/°·±¸GÓ0DÓEˆŒ
Ø×-Ñ-¨g¯k©k¸&Ó.AÓBˆŒ	Ø×-Ñ-¨g¯k©k¸&Ó.AÓBˆŒ	Ø×5Ñ5°g·k±kÀ*Ó6MÓNˆŒØ×-Ñ-¨g¯k©k¸&Ó.AÓBˆŒ	à$Ÿ[™[¨¸!Ó<ˆÔàŸ™ J°Ó3ˆŒØ�=‰=×#Ñ# CÔ(Ø ŸM™M×0Ñ0°Ó5ˆDŒMà�;‰;�xÔ Ø×1Ñ1°'¸(Ñ2CÓDˆDŒIð �=Š=ØˆD�Ið r.   c                 óÀ   — | sddiS t        j                  | «      } ddddddd	d
ddddœ}| j                  d«      }|�||v r	||   | d<   nt        d|z  «       y d| d<   | S )NÚdefinedFÚsolidÚsysDotÚsysDashÚdashÚdashDotÚlgDashÚ	lgDashDotÚlgDashDotDotÚdotÚ
sysDashDotÚsysDashDotDot)r=   Ú	round_dotÚ
square_dotr@   Údash_dotÚ	long_dashÚlong_dash_dotÚlong_dash_dot_dotrE   Úsystem_dash_dotÚsystem_dash_dot_dotÚ	dash_typezUnknown dash type '%s'T©ÚcopyÚdeepcopyr4   r   )r&   Ú
dash_typesrP   s      r-   r8   zShape._get_line_properties`   s˜   € ñ Ø˜uÐ%Ð%ô �}‰}˜TÓ"ˆð Ø!Ø#ØØ!Ø!Ø(Ø!/ØØ+Ø#2ñ
ˆ
ð —H‘H˜[Ó)ˆ	àÐ Ø˜JÑ&Ø$.¨yÑ$9��[Ò!äÐ-°	Ñ9Ô:ØàˆˆY‰àˆr.   c                 óF   — | sddiS t        j                  | «      } d| d<   | S )Nr<   FT)rR   rS   )r#   s    r-   r5   zShape._get_fill_properties†   s0   € ñ Ø˜uÐ%Ð%ô �}‰}˜TÓ"ˆàˆˆY‰àˆr.   c                 ó  — | sy t        j                  | «      } | j                  d«      st        d«       y | j                  d«      st        d«       y i dd“dd“d	d
“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd “d!d"“d#d$“d%d&“i d'd(“d)d*“d+d,“d-d.“d/d0“d1d2“d3d4“d5d6“d7d8“d9d:“d;d<“d=d>“d?d@“dAdB“dCdC“dDdE“dFdG“¥dHdIdJdKdLdMdNdOdPdQdRdSdTdUdVœ¥}| d   |vrt        dW| d   z  «       y || d      | d<   | j                  dXdY«      | dX<   | S )ZNÚpatternzPattern must include 'pattern'Úfg_colorzPattern must include 'fg_color'Ú	percent_5Úpct5Ú
percent_10Úpct10Ú
percent_20Úpct20Ú
percent_25Úpct25Ú
percent_30Úpct30Ú
percent_40Úpct40Ú
percent_50Úpct50Ú
percent_60Úpct60Ú
percent_70Úpct70Ú
percent_75Úpct75Ú
percent_80Úpct80Ú
percent_90Úpct90Úlight_downward_diagonalÚltDnDiagÚlight_upward_diagonalÚltUpDiagÚdark_downward_diagonalÚdkDnDiagÚdark_upward_diagonalÚdkUpDiagÚwide_downward_diagonalÚwdDnDiagÚwide_upward_diagonalÚwdUpDiagÚlight_verticalÚltVertÚlight_horizontalÚltHorzÚnarrow_verticalÚnarVertÚnarrow_horizontalÚnarHorzÚdark_verticalÚdkVertÚdark_horizontalÚdkHorzÚdashed_downward_diagonalÚ
dashDnDiagÚdashed_upward_diagonalÚ
dashUpDiagÚdashed_horizontalÚdashHorzÚdashed_verticalÚdashVertÚsmall_confettiÚ
smConfettiÚlarge_confettiÚ
lgConfettiÚzigzagÚzigZagÚwaveÚdiagonal_brickÚ	diagBrickÚhorizontal_brickÚ	horzBrickÚweaveÚplaidÚdivotÚdotGridÚdotDmndÚshingleÚtrellisÚsphereÚsmGridÚlgGridÚsmCheckÚlgCheckÚopenDmndÚ	solidDmnd)rœ   r�   rž   Údotted_gridÚdotted_diamondr¡   r¢   r£   Ú
small_gridÚ
large_gridÚsmall_checkÚlarge_checkÚoutlined_diamondÚsolid_diamondzunknown pattern type '%s'Úbg_colorz#FFFFFFrQ   )rW   Útypess     r-   Ú_get_pattern_propertieszShape._get_pattern_properties”   st  € ñ Øô —-‘- Ó(ˆà�{‰{˜9Ô%ÜÐ1Ô2Øà�{‰{˜:Ô&ÜÐ2Ô3Øð1
Ø˜ð1
à˜'ð1
ð ˜'ð1
ð ˜'ð	1
ð
 ˜'ð1
ð ˜'ð1
ð ˜'ð1
ð ˜'ð1
ð ˜'ð1
ð ˜'ð1
ð ˜'ð1
ð ˜'ð1
ð & zð1
ð $ Zð1
ð % jð1
ð  # Jð!1
ð" % jñ#1
ð$ # Jð%1
ð& ˜hð'1
ð(  ð)1
ð* ˜yð+1
ð,   ð-1
ð. ˜Xð/1
ð0 ˜xð11
ð2 '¨ð31
ð4 % lð51
ð6   ð71
ð8 ˜zð91
ð: ˜lð;1
ð< ˜lð=1
ð> �hð?1
ð@ �FðA1
ðB ˜kðC1
ðD  ñE1
ðF ØØØ$Ø'Ø Ø ØØ"Ø"Ø$Ø$Ø *Ø(òa1
ˆðh �9Ñ UÑ*ÜÐ,¨w°yÑ/AÑAÔBØà!& w¨yÑ'9Ñ!:ˆG�IÑð &Ÿk™k¨*°iÓ@ˆ�
Ñàˆr.   c                 óò  — | sy t        j                  | «      } dddddœ}d| vst        | d   t        «      st	        d«       y dt        | d   «      cxk  rd	k  sn t	        d
«       y d| v rNt        | d   «      t        | d   «      k7  rt	        d«       y | d   D ]  }d|cxk  rdk  rŒn t	        d«        y  nWt        | d   «      dk(  rddg| d<   n>t        | d   «      dk(  rg d¢| d<   n%t        | d   «      dk(  rg d¢| d<   nt	        d«       y | j                  d«      }|rd|cxk  rdk  sn t	        d«       y d| d<   | j                  d«      }|�||v r
||   | d<   | S t	        d|z  «       y d| d<   | S )NÚlinearÚcircleÚrectÚshape)r¶   ÚradialÚrectangularÚpathÚcolorsz!Gradient must include colors listé   é
   z@Gradient colors list must at least 2 values and not more than 10Ú	positionsz0Gradient positions not equal to number of colorsr   éd   z;Gradient position must be in the range 0 <= position <= 100é   )r   é2   rÁ   é   )r   é!   éB   rÁ   zMust specify gradient positionsÚangleih  z4Gradient angle must be in the range 0 <= angle < 360éZ   ÚtypezUnknown gradient type '%s)rR   rS   Ú
isinstanceÚlistr   Úlenr4   )r0   r³   ÚposrÇ   Úgradient_types        r-   r7   zShape._get_gradient_propertieså   sÇ  € ñ Øô —=‘= Ó*ˆð ØØ!Øñ	
ˆð ˜8Ñ#¬:°h¸xÑ6HÌ$Ô+OÜÐ4Ô5Øð ”C˜ Ñ*Ó+Ô1¨rÔ1ÜÐSÔTØà˜(Ñ"ä�8˜KÑ(Ó)¬S°¸(Ñ1CÓ-DÒDÜÐGÔHØð   Ñ,ò �Ø˜C” 3•ÜÐVÔWÙñô �8˜HÑ%Ó&¨!Ò+Ø)*¨C¨�˜Ò%ä�X˜hÑ'Ó(¨AÒ-Ú(4�˜Ò%ä�X˜hÑ'Ó(¨AÒ-Ú(8�˜Ò%ô Ð6Ô7Øà—‘˜WÓ%ˆÙØ˜Ô# Ô#ÜÐKÔLØà "ˆH�WÑð !Ÿ™ VÓ,ˆàÐ$Ø Ñ%Ø#(¨Ñ#7�˜Ñ ð ˆô Ð0°=Ñ@ÔAØà'ˆH�VÑàˆr.   c                 óŒ  — | €i } | j                  d«      | j                  d«      | j                  dd«      | j                  d«      | j                  d«      | j                  d«      | j                  d«      | j                  d	«      | j                  d
d«      | j                  dd«      dœ
}|d   rt        |d   dz  «      |d<   |S )Nr   ÚcolorÚsizeé   ÚboldÚitalicÚ	underlineÚpitch_familyÚcharsetÚbaseliner	   Úlangzen-US)
r   rÐ   rÑ   rÓ   rÔ   rÕ   rÖ   r×   rØ   rÙ   rÁ   )r4   Úint)r+   r$   s     r-   r6   zShape._get_font_properties0  sº   € ð ˆ?ØˆGð —K‘K Ó'Ø—[‘[ Ó)Ø—K‘K ¨Ó+Ø—K‘K Ó'Ø—k‘k (Ó+Ø Ÿ™ [Ó1Ø#ŸK™K¨Ó7Ø—{‘{ 9Ó-ØŸ™ J°Ó3Ø—K‘K ¨Ó0ñ
ˆð �Š<Ü˜t F™|¨cÑ1Ó2ˆD�‰Làˆr.   c                 ó   — g }| s|S | j                  d«      r|j                  d| d   f«       | j                  d«      �|j                  dd| d   z   f«       | j                  d«      �|j                  dd| d   z   f«       | j                  d«      �|j                  d	«       | j                  d
«      dk7  r|j                  d
| d
   f«       |S )NrÑ   ÚszrÓ   Úbr   rÔ   ÚirÕ   )ÚuÚsngrØ   r	   )r4   Úappend©r$   Ú
attributess     r-   Ú_get_font_style_attributesz Shape._get_font_style_attributesI  s×   € ð ˆ
áØÐà�8‰8�FÔØ×Ñ˜t T¨&¡\Ð2Ô3à�8‰8�FÓÐ'Ø×Ñ˜s A¨¨V©Ñ$4Ð5Ô6à�8‰8�HÓÐ)Ø×Ñ˜s A¨¨X©Ñ$6Ð7Ô8à�8‰8�KÓ Ð,Ø×Ñ˜lÔ+à�8‰8�JÓ 2Ò%Ø×Ñ˜z¨4°
Ñ+;Ð<Ô=àÐr.   c                 ó´   — g }| s|S | d   �|j                  d| d   f«       | d   �|j                  d| d   f«       | d   �|j                  d| d   f«       |S )Nr   ÚtypefacerÖ   ÚpitchFamilyr×   )rá   râ   s     r-   Ú_get_font_latin_attributesz Shape._get_font_latin_attributesb  s}   € ð ˆ
áØÐà�‰<Ð#Ø×Ñ˜z¨4°©<Ð8Ô9à�ÑÐ+Ø×Ñ˜}¨d°>Ñ.BÐCÔDà�	‰?Ð&Ø×Ñ˜y¨$¨y©/Ð:Ô;àÐr.   c                 óþ   — | sddiS t        j                  | «      } d| v r*| d   }ddddœ}||v r	||   | d<   nt        d|z  «       ddiS d	| v r*| d	   }d
dddœ}||v r	||   | d	<   nt        d|z  «       ddiS d| d<   | S )Nr<   FÚverticalÚtopÚmiddleÚbottom)rë   rì   rí   zUnknown alignment type '%s'Ú
horizontalÚleftÚcenterÚright)rï   rð   rñ   T)rR   rS   r   )r"   Ú
align_typeÚalign_typess      r-   r3   zShape._get_align_propertiesu  sÝ   € ñ Ø˜uÐ%Ð%ô —‘˜eÓ$ˆà˜ÑØ˜zÑ*ˆJð Ø"Ø"ñˆKð ˜[Ñ(Ø$/°
Ñ$;��jÒ!äÐ2°ZÑ?Ô@Ø! 5Ð)Ð)à˜5Ñ Ø˜|Ñ,ˆJð Ø"Ø ñˆKð ˜[Ñ(Ø&1°*Ñ&=��lÒ#äÐ2°ZÑ?Ô@Ø! 5Ð)Ð)àˆˆiÑàˆr.   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r)   Ústaticmethodr8   r5   r´   r7   r6   rä   rè   r3   Ú__classcell__)r,   s   @r-   r   r      sº   ø„ ñô%#òZð4 ñ#ó ð#ðJ ñó ðð ñNó ðNð` ñHó ðHðT ñó ðð0 ñó ðð0 ñó ðð$ ñ(ó ô(r.   r   )rR   Úwarningsr   Úobjectr   © r.   r-   ú<module>rý      s   ðó Ý ôRˆFõ Rr.   