
    ,h                         d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
mZ dd	lmZmZmZmZ  G d
 de      Z G d de      Z G d de      Z G d de      Zy)z=
lxml custom element classes for shape-related XML elements.
    )absolute_import   )	parse_xml)nsdecls   )BaseShapeElement)ST_DrawingElementIdXsdUnsignedInt)BaseOxmlElementOneAndOnlyOneRequiredAttribute	ZeroOrOnec                   4    e Zd ZdZ ede      Z ede      Zy)CT_Connectionz
    A `a:stCxn` or `a:endCxn` element specifying a connection between
    an end-point of a connector and a shape connection point.
    ididxN)	__name__
__module____qualname____doc__r   r	   r   r
   r        \/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/pptx/oxml/shapes/connector.pyr   r      s"    
 
4!4	5B
E>
2Cr   r   c                   V    e Zd ZdZdZ ed      Z ed      Z[ed        Z	e
d        Zy)CT_Connectorz6
    A line/connector shape ``<p:cxnSp>`` element
    )p:nvCxnSpPrp:spPrzp:stylezp:extLstr   r   c
                     | j                         }
|rdnd|	rdndz   } |
j                  di t        dd      ||||||||d	}t        |      S )za
        Return a new ``<p:cxnSp>`` element tree configured as a base
        connector.
        z
 flipH="1" z
 flipV="1"ap)	r   r   namexycxcyprstflipr   )_cxnSp_tmplformatr   r   )clsid_r"   r'   r#   r$   r%   r&   flipHflipVtmplr(   xmls                r   	new_cxnSpzCT_Connector.new_cxnSp$   sj       %2%,RPdkk 
"3,

 ~r   c                       	 y)Na  <p:cxnSp {nsdecls}>
  <p:nvCxnSpPr>
    <p:cNvPr id="{id}" name="{name}"/>
    <p:cNvCxnSpPr/>
    <p:nvPr/>
  </p:nvCxnSpPr>
  <p:spPr>
    <a:xfrm{flip}>
      <a:off x="{x}" y="{y}"/>
      <a:ext cx="{cx}" cy="{cy}"/>
    </a:xfrm>
    <a:prstGeom prst="{prst}">
      <a:avLst/>
    </a:prstGeom>
  </p:spPr>
  <p:style>
    <a:lnRef idx="2">
      <a:schemeClr val="accent1"/>
    </a:lnRef>
    <a:fillRef idx="0">
      <a:schemeClr val="accent1"/>
    </a:fillRef>
    <a:effectRef idx="1">
      <a:schemeClr val="accent1"/>
    </a:effectRef>
    <a:fontRef idx="minor">
      <a:schemeClr val="tx1"/>
    </a:fontRef>
  </p:style>
</p:cxnSp>r   r   r   r   r)   zCT_Connector._cxnSp_tmpl;   s    	
r   N)r   r   r   r   _tag_seqr   	nvCxnSpPrspPrclassmethodr1   staticmethodr)   r   r   r   r   r      sL     @Hm,I"D ,  
  
r   r   c                   @    e Zd ZdZ ed      Z ed      Z ed      Zy)CT_ConnectorNonVisualzw
    ``<p:nvCxnSpPr>`` element, container for the non-visual properties of
    a connector, such as name, id, etc.
    zp:cNvPrzp:cNvCxnSpPrzp:nvPrN)r   r   r   r   r   cNvPr
cNvCxnSpPrnvPrr   r   r   r9   r9   _   s'    
 )$E~.J"Dr   r9   c                   J    e Zd ZdZdZ ededd       Z ededd       Z[y)	CT_NonVisualConnectorPropertiesz
    `p:cNvCxnSpPr` element, container for the non-visual properties specific
    to a connector shape, such as connections and connector locking.
    )za:cxnSpLocksa:stCxna:endCxnza:extLstr?   r   N)
successorsr@      )r   r   r   r   r3   r   stCxnendCxnr   r   r   r>   r>   j   s6    
 CHiHQRL9Ezhqrl;Fr   r>   N)r   
__future__r   r   r   nsr   sharedr   simpletypesr	   r
   xmlchemyr   r   r   r   r   r   r9   r>   r   r   r   <module>rJ      sV    '   $ = S S3$ 3B
# B
J#O #	o 	r   