U
    rÎ·h  ã                   @   s°   d Z ddlmZ ddlmZmZmZmZmZm	Z	m
Z
mZ ddlmZmZmZmZ ddlmZ G dd„ deƒZG dd	„ d	eƒZG d
d„ deƒZG dd„ deƒZG dd„ deƒZdS )z
Richtext definition
é    )ÚSerialisable)ÚAliasÚTypedÚIntegerÚSetÚNoneSetÚBoolÚStringÚSequence)Ú
NestedBoolÚNestedIntegerÚNestedStringÚ
NestedText)ÚFontc                   @   sD   e Zd ZdZeƒ Zeddddgd�Zeddd	d
gd�Zddd„Z	dS )ÚPhoneticPropertiesÚ
phoneticPrZhalfwidthKatakanaZfullwidthKatakanaÚHiraganaZnoConversion)ÚvaluesZ	noControlÚleftÚcenterZdistributedNc                 C   s   || _ || _|| _d S ©N)ÚfontIdÚtypeÚ	alignment)Úselfr   r   r   © r   ú6/tmp/pip-unpacked-wheel-49e_hfpc/openpyxl/cell/text.pyÚ__init__$   s    zPhoneticProperties.__init__)NNN)
Ú__name__Ú
__module__Ú__qualname__Útagnamer   r   r   r   r   r   r   r   r   r   r      s    ÿ   ýr   c                   @   s8   e Zd ZdZeƒ Zeƒ Zeed�Z	e
dƒZddd„ZdS )ÚPhoneticTextÚrPh)Úexpected_typeÚtNc                 C   s   || _ || _|| _d S r   )ÚsbÚebr%   )r   r&   r'   r%   r   r   r   r   7   s    zPhoneticText.__init__)NNN)r   r   r    r!   r   r&   r'   r   Ústrr%   r   Útextr   r   r   r   r   r"   .   s   
   ýr"   c                   @   s€   e Zd ZdZdZedd�ZejZej	Z	ej
Z
ejZejZejZejZejZejZejZejZejZejZejZdZd	dd„ZdS )
Ú
InlineFontz�
    Font for inline text because, yes what you need are different objects with the same elements but different constraints.
    ZRPrEltT)Ú
allow_none©ÚrFontÚcharsetÚfamilyÚbÚiÚstrikeÚoutlineÚshadowÚcondenseÚextendÚcolorÚszÚuÚ	vertAlignÚschemeNc                 C   s^   || _ || _|| _|| _|| _|| _|| _|| _|	| _|
| _	|| _
|| _|| _|| _|| _d S r   r,   )r   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r   r   r   r   ]   s    zInlineFont.__init__)NNNNNNNNNNNNNNN)r   r   r    Ú__doc__r!   r   r-   r   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   Ú__elements__r   r   r   r   r   r*   A   sD   
               ñr*   c                   @   sF   e Zd ZdZeedd�ZedƒZe	e
dd�ZedƒZdZd
dd	„ZdS )ÚRichTextZREltT©r$   r+   ÚrPrr%   ©r@   r%   Nc                 C   s   || _ || _d S r   rA   )r   r@   r%   r   r   r   r   Š   s    zRichText.__init__)NN)r   r   r    r!   r   r*   r@   r   Úfontr   r(   r%   r)   r=   r   r   r   r   r   r>      s     þr>   c                   @   sz   e Zd ZdZeded�ZedƒZe	e
dd�ZedƒZe	edd�ZedƒZeedd�ZedƒZd	Zddd„Zedd„ ƒZd
S )ÚTextr)   T)r+   r$   r%   r?   Úrr#   r   ©r%   rD   r#   r   Nr   c                 C   s   || _ || _|| _|| _d S r   rE   )r   r%   rD   r#   r   r   r   r   r   ¡   s    zText.__init__c                 C   sF   g }| j dk	r| | j ¡ | jD ]}|jdk	r | |j¡ q d |¡S )z1
        Text stripped of all formatting
        NÚ )ÚplainÚappendÚ	formattedr%   Újoin)r   ZsnippetsÚblockr   r   r   Úcontent­   s    


zText.content)Nr   r   N)r   r   r    r!   r   r(   r%   r   rG   r
   r>   rD   rI   r"   r#   Zphoneticr   r   r   r=   r   ÚpropertyrL   r   r   r   r   rC   ’   s"       ü
rC   N)r<   Z!openpyxl.descriptors.serialisabler   Zopenpyxl.descriptorsr   r   r   r   r   r   r	   r
   Zopenpyxl.descriptors.nestedr   r   r   r   Zopenpyxl.styles.fontsr   r   r"   r*   r>   rC   r   r   r   r   Ú<module>   s   (
>