ó
    ˆ*£h3  ã                  ó0  • S r SSKJr  SSKJrJr  SSKJr  SSKJ	r	  SSK
Jr  SSKJr  SSKJrJr  SS	KJr  SS
KJrJrJrJrJr  SSKJrJrJr  \(       a
  SSKJrJrJr   " S S\5      r  " S S\5      r! " S S\5      r" " S S\5      r# " S S\5      r$g)zBlxml custom element class for CT_GraphicalObjectFrame XML element.é    )Úannotations)ÚTYPE_CHECKINGÚcast)Ú	parse_xml)ÚCT_Chart)Únsdecls)ÚBaseShapeElement)Ú
XsdBooleanÚ	XsdString)ÚCT_Table)ÚBaseOxmlElementÚOneAndOnlyOneÚOptionalAttributeÚRequiredAttributeÚ	ZeroOrOne)ÚGRAPHIC_DATA_URI_CHARTÚGRAPHIC_DATA_URI_OLEOBJÚGRAPHIC_DATA_URI_TABLE)Ú#CT_ApplicationNonVisualDrawingPropsÚCT_NonVisualDrawingPropsÚCT_Transform2Dc                  óH   • \ rS rSr% Sr\" S5      rS\S'   \S	S j5       r	Sr
g)
ÚCT_GraphicalObjecté"   z|`a:graphic` element.

The container for the reference to or definition of the framed graphical object (table, chart,
etc.).
za:graphicDataÚCT_GraphicalObjectDataÚgraphicDatac                ó.   • U R                   R                  $ )z;The `c:chart` grandchild element, or |None| if not present.)r   Úchart©Úselfs    ÚV/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pptx/oxml/shapes/graphfrm.pyr   ÚCT_GraphicalObject.chart-   s   € ð ×Ñ×%Ñ%Ð%ó    © N©ÚreturnúCT_Chart | None)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   Ú__annotations__Úpropertyr   Ú__static_attributes__r$   r#   r!   r   r   "   s2   ‡ ññ +8Øó+€KÐ'ó ð ó&ó ó&r#   r   c                  óÎ   • \ rS rSr% Sr\" S5      rS\S'   \" S5      rS\S'   \	" S	\
5      rS
\S	'   \SS j5       r\SS j5       r\SS j5       r\SS j5       r\SS j5       rSrg)r   é3   zb`p:graphicData` element.

The direct container for a table, a chart, or another graphical object.
zc:chartr'   r   za:tblzCT_Table | NoneÚtblÚuriÚstrc                óL   • U R                   c  S$ U R                   R                  $ )a_  Optional `r:id` attribute value of `p:oleObj` descendent element.

This value is `None` when this `p:graphicData` element does not enclose an OLE object.
This value could also be `None` if an enclosed OLE object does not specify this attribute
(it is specified optional in the schema) but so far, all OLE objects we've encountered
specify this value.
N)Ú_oleObjÚrIdr   s    r!   Úblob_rIdÚCT_GraphicalObjectData.blob_rId=   s"   € ð —|‘|Ñ+ˆtÐA°·±×1AÑ1AÐAr#   c                óL   • U R                   c  S$ U R                   R                  $ )zÙOptional boolean indicating an embedded OLE object.

Returns `None` when this `p:graphicData` element does not enclose an OLE object. `True`
indicates an embedded OLE object and `False` indicates a linked OLE object.
N)r6   Úis_embeddedr   s    r!   Úis_embedded_ole_objÚ*CT_GraphicalObjectData.is_embedded_ole_objH   s"   € ð —|‘|Ñ+ˆtÐI°·±×1IÑ1IÐIr#   c                óL   • U R                   c  S$ U R                   R                  $ )aÀ  Optional str value of "progId" attribute of `p:oleObj` descendent.

This value identifies the "type" of the embedded object in terms of the application used
to open it.

This value is `None` when this `p:graphicData` element does not enclose an OLE object.
This could also be `None` if an enclosed OLE object does not specify this attribute (it is
specified optional in the schema) but so far, all OLE objects we've encountered specify
this value.
N)r6   ÚprogIdr   s    r!   r?   ÚCT_GraphicalObjectData.progIdQ   s"   € ð —|‘|Ñ+ˆtÐD°·±×1DÑ1DÐDr#   c                óL   • U R                   c  S$ U R                   R                  $ )zóOptional value of "showAsIcon" attribute value of `p:oleObj` descendent.

This value is `None` when this `p:graphicData` element does not enclose an OLE object. It
is False when the `showAsIcon` attribute is omitted on the `p:oleObj` element.
N)r6   Ú
showAsIconr   s    r!   rB   Ú!CT_GraphicalObjectData.showAsIcon_   s"   € ð —|‘|Ñ+ˆtÐH°·±×1HÑ1HÐHr#   c                óT   • [        SU R                  S5      5      nU(       a  US   $ S$ )a  Optional `p:oleObj` element contained in this `p:graphicData' element.

Returns `None` when this graphic-data element does not enclose an OLE object. Note that
this returns the last `p:oleObj` element found. There can be more than one `p:oleObj`
element because an `mc.AlternateContent` element may appear as the child of
`p:graphicData` and that alternate-content subtree can contain multiple compatibility
choices. The last one should suit best for reading purposes because it contains the lowest
common denominator.
zlist[CT_OleObject]z.//p:oleObjéÿÿÿÿN)r   Úxpath)r    ÚoleObjss     r!   r6   ÚCT_GraphicalObjectData._oleObjh   s+   € ô Ð+¨T¯Z©Z¸Ó-FÓGˆÞ%ˆw�r‰{Ð/¨4Ð/r#   r$   N©r&   ú
str | None©r&   zbool | None)r&   zCT_OleObject | None)r(   r)   r*   r+   r,   r   r   r-   r2   r   r   r3   r.   r8   r<   r?   rB   r6   r/   r$   r#   r!   r   r   3   s¢   ‡ ññ
 ' yÓ1€Eˆ?Ó1Ù$ WÓ-€CˆÓ-Ù  ¨	Ó2€CˆÓ2àóBó ðBð óJó ðJð óEó ðEð óIó ðIð ó0ó ó0r#   r   c                  óÊ  • \ rS rSr% Sr\" S5      rS\S'   \" S5      rS\S'   \" S	5      r	S
\S'   \
SS j5       r\
SS j5       rSS jr\
SS j5       r\
SS j5       r\
SS j5       r\
SS j5       r\                S S j5       r\              S!S j5       r\                        S"S j5       r\                  S#S j5       rSrg)$ÚCT_GraphicalObjectFrameéw   zZ`p:graphicFrame` element.

A container for a table, a chart, or another graphical object.
zp:nvGraphicFramePrÚ CT_GraphicalObjectFrameNonVisualÚnvGraphicFramePrzp:xfrmr   Úxfrmz	a:graphicr   Úgraphicc                ó.   • U R                   R                  $ )zAThe `c:chart` great-grandchild element, or |None| if not present.)rR   r   r   s    r!   r   ÚCT_GraphicalObjectFrame.chart…   s   € ð �|‰|×!Ñ!Ð!r#   c                ó:   • U R                   nUc  gUR                  $ )zWThe `rId` attribute of the `c:chart` great-grandchild element.

|None| if not present.
N)r   r7   )r    r   s     r!   Ú	chart_rIdÚ!CT_GraphicalObjectFrame.chart_rIdŠ   s   € ð —
‘
ˆØ‰=ØØ�y‰yÐr#   c                ó   • U R                   $ )zTReturn the required `p:xfrm` child element.

Overrides version on BaseShapeElement.
)rQ   r   s    r!   Úget_or_add_xfrmÚ'CT_GraphicalObjectFrame.get_or_add_xfrm•   s   € ð
 �y‰yÐr#   c                ó.   • U R                   R                  $ )z9`a:graphicData` grandchild of this graphic-frame element.)rR   r   r   s    r!   r   Ú#CT_GraphicalObjectFrame.graphicDataœ   s   € ð �|‰|×'Ñ'Ð'r#   c                óB   • U R                   R                  R                  $ )z;str value of `uri` attribute of `a:graphicData` grandchild.)rR   r   r3   r   s    r!   ÚgraphicData_uriÚ'CT_GraphicalObjectFrame.graphicData_uri¡   s   € ð �|‰|×'Ñ'×+Ñ+Ð+r#   c                ó<   • U R                   R                  [        :H  $ )zD`True` for graphicFrame containing an OLE object, `False` otherwise.)r   r3   r   r   s    r!   Ú
has_oleobjÚ"CT_GraphicalObjectFrame.has_oleobj¦   s   € ð ×Ñ×#Ñ#Ô'>Ñ>Ð>r#   c                ó.   • U R                   R                  $ )zÚOptional boolean indicating an embedded OLE object.

Returns `None` when this `p:graphicFrame` element does not enclose an OLE object. `True`
indicates an embedded OLE object and `False` indicates a linked OLE object.
)r   r<   r   s    r!   r<   Ú+CT_GraphicalObjectFrame.is_embedded_ole_obj«   s   € ð ×Ñ×3Ñ3Ð3r#   c                óÀ   • [         R                  XXEXg5      nUR                  R                  n	[        U	l        U	R                  [        R                  " U5      5        U$ )zFReturn a `p:graphicFrame` element tree populated with a chart element.)	rM   Únew_graphicFramerR   r   r   r3   Úappendr   Ú	new_chart)
ÚclsÚid_Únamer7   ÚxÚyÚcxÚcyÚgraphicFramer   s
             r!   Únew_chart_graphicFrameÚ.CT_GraphicalObjectFrame.new_chart_graphicFrame´   sP   € ô
 /×?Ñ?ÀÈ1ÐQSÓXˆØ"×*Ñ*×6Ñ6ˆÜ0ˆŒØ×Ñœ8×-Ò-¨cÓ2Ô3ØÐr#   c                ót   • [        [        [        S[        SS5       SU SU SU SU SU S	U S
35      5      $ )zÂReturn a new `p:graphicFrame` element tree suitable for containing a table or chart.

Note that a graphicFrame element is not a valid shape until it contains a graphical object
such as a table.
ú<p:graphicFrame ÚaÚpú*>
  <p:nvGraphicFramePr>
    <p:cNvPr id="ú" name="úŸ"/>
    <p:cNvGraphicFramePr>
      <a:graphicFrameLocks noGrp="1"/>
    </p:cNvGraphicFramePr>
    <p:nvPr/>
  </p:nvGraphicFramePr>
  <p:xfrm>
    <a:off x="ú" y="ú"/>
    <a:ext cx="ú" cy="zS"/>
  </p:xfrm>
  <a:graphic>
    <a:graphicData/>
  </a:graphic>
</p:graphicFrame>)r   rM   r   r   )ri   rj   rk   rl   rm   rn   ro   s          r!   rf   Ú(CT_GraphicalObjectFrame.new_graphicFrame¿   sg   € ô Ü#ÜØ"¤7¨3°Ó#4Ð"5ð 6$à$' 5¨°°ð 7!ð "#  5¨¨ð ,"Ø"$  V¨B¨4ð 0$ð%óó
ð 	
r#   c                ó  • [        [        [        SR                  / SP[	        SSS5       PSPU PSPU PSPU PS	PU PS
PU PSPU	 PSPU PSPU
 PSPU PSPU PSPU PSPU PS	PU PSPU PSPU	 PSP5      5      5      $ )a¥  Return newly-created `p:graphicFrame` for embedded OLE-object.

`ole_object_rId` identifies the relationship to the OLE-object part.

`progId` is a str identifying the object-type in terms of the application (program) used
to open it. This becomes an attribute of the same name in the `p:oleObj` element.

`icon_rId` identifies the relationship to an image part used to display the OLE-object as
an icon (vs. a preview).
Ú rt   ru   rv   Úrrw   rx   ry   rz   r{   r|   z­"/>
  </p:xfrm>
  <a:graphic>
    <a:graphicData        uri="http://schemas.openxmlformats.org/presentationml/2006/ole">
      <p:oleObj showAsIcon="1"                r:id="z"                imgW="z"                imgH="z"                progId="zÝ">
        <p:embed/>
        <p:pic>
          <p:nvPicPr>
            <p:cNvPr id="0" name=""/>
            <p:cNvPicPr/>
            <p:nvPr/>
          </p:nvPicPr>
          <p:blipFill>
            <a:blip r:embed="z©"/>
            <a:stretch>
              <a:fillRect/>
            </a:stretch>
          </p:blipFill>
          <p:spPr>
            <a:xfrm>
              <a:off x="z"/>
              <a:ext cx="zÞ"/>
            </a:xfrm>
            <a:prstGeom prst="rect">
              <a:avLst/>
            </a:prstGeom>
          </p:spPr>
        </p:pic>
      </p:oleObj>
    </a:graphicData>
  </a:graphic>
</p:graphicFrame>)r   rM   r   Újoinr   )ri   rj   rk   Úole_object_rIdr?   Úicon_rIdrl   rm   rn   ro   ÚimgWÚimgHs               r!   Únew_ole_object_graphicFrameÚ3CT_GraphicalObjectFrame.new_ole_object_graphicFrameÞ   s   € ô2 Ü#Ü÷.%ó .%Ð"ð .%¤7¨3°°SÓ#9Ð":ð .%ð ;$ð .%à$' 5ð.%à(0ð.%à15°ð.%ð7!ð.%ð "# ð.%ð $)ð.%ð *+¨ð.%ð,"ð.%ð #% ð.%ð &,ð.%ð -/¨4ð.%ð0)ð.%ð  *8Ð(8ð!.%ð 9)ð!.%ð" *.¨ð#.%ð"/)ð#.%ð$ *.¨ð%.%ð$/+ð%.%ð& ,2¨(ð'.%ð&	30ð'.%ð8 19¨zð9.%ð8:+ð9.%ðF ,-¨#ðG.%ðF .3ðG.%ðF 45°#ðG.%ðF6,ðG.%ðH -/¨4ðI.%ðH 06ðI.%ðH 79°TðI.%ðH
:$ôI.%ó0ó3
ð 3	
r#   c	                óÞ   • U R                  XXVXx5      n	[        U	R                  R                  l        U	R                  R                  R                  [        R                  " X4Xx5      5        U	$ )zFReturn a `p:graphicFrame` element tree populated with a table element.)rf   r   rR   r   r3   rg   r   Únew_tbl)
ri   rj   rk   ÚrowsÚcolsrl   rm   rn   ro   rp   s
             r!   Únew_table_graphicFrameÚ.CT_GraphicalObjectFrame.new_table_graphicFrame,  sY   € ð
 ×+Ñ+¨C°q¸RÓDˆÜ/Eˆ×Ñ×(Ñ(Ô,Ø×Ñ×(Ñ(×/Ñ/´×0@Ò0@ÀÈRÓ0TÔUØÐr#   r$   Nr%   rI   )r&   r   )r&   r   )r&   r4   ©r&   ÚboolrK   )rj   Úintrk   r4   r7   r4   rl   r�   rm   r�   rn   r�   ro   r�   r&   rM   )rj   r�   rk   r4   rl   r�   rm   r�   rn   r�   ro   r�   r&   rM   )rj   r�   rk   r4   r‚   r4   r?   r4   rƒ   r4   rl   r�   rm   r�   rn   r�   ro   r�   r„   r�   r…   r�   r&   rM   )rj   r�   rk   r4   rŠ   r�   r‹   r�   rl   r�   rm   r�   rn   r�   ro   r�   r&   rM   )r(   r)   r*   r+   r,   r   rP   r-   rQ   rR   r.   r   rV   rY   r   r^   ra   r<   Úclassmethodrq   rf   r†   rŒ   r/   r$   r#   r!   rM   rM   w   sW  ‡ ññ 	Ð*Ó+ð Ð6ó ñ )¨Ó2€Dˆ.Ó2Ù"/Øó#€GÐó ð ó"ó ð"ð óó ðôð ó(ó ð(ð ó,ó ð,ð ó?ó ð?ð ó4ó ð4ð ðØðØ ðØ'*ðØ/2ðØ7:ðØ@CðØILðà	 óó ðð ð
Øð
Ø ð
Ø%(ð
Ø-0ð
Ø69ð
Ø?Bð
à	 ó
ó ð
ð< ðK
àðK
ð ðK
ð ð	K
ð
 ðK
ð ðK
ð ðK
ð ðK
ð ðK
ð ðK
ð ðK
ð ðK
ð 
!óK
ó ðK
ðZ ðØðØ ðØ(+ðØ36ðØ;>ðØCFðØLOðØUXðà	 óó ór#   rM   c                  óN   • \ rS rSr% Sr\" S5      rS\S'   \" S5      rS\S'   S	r	g
)rO   i7  zr`p:nvGraphicFramePr` element.

This contains the non-visual properties of a graphic frame, such as name, id, etc.
zp:cNvPrr   ÚcNvPrzp:nvPrr   ÚnvPrr$   N)
r(   r)   r*   r+   r,   r   r“   r-   r”   r/   r$   r#   r!   rO   rO   7  s5   ‡ ññ
 '4Øó'€EÐ#ó ñ 	�hÓð 	Ð
-ö r#   rO   c                  ó€   • \ rS rSr% Sr\" S\5      rS\S'   \" S\5      r	S\S'   \" S\
SS	9rS
\S'   \SS j5       rSrg)ÚCT_OleObjectiE  z…`p:oleObj` element, container for an OLE object (e.g. Excel file).

An OLE object can be either linked or embedded (hence the name).
r?   rJ   zr:idr7   rB   F)Údefaultr�   c                ó<   • [        U R                  S5      5      S:„  $ )z?True when this OLE object is embedded, False when it is linked.z	./p:embedr   )ÚlenrF   r   s    r!   r;   ÚCT_OleObject.is_embeddedS  s   € ô �4—:‘:˜kÓ*Ó+¨aÑ/Ð/r#   r$   NrŽ   )r(   r)   r*   r+   r,   r   r   r?   r-   r7   r
   rB   r.   r;   r/   r$   r#   r!   r–   r–   E  s^   ‡ ññ
 +Ø�)ó€FˆJó ñ (¨°	Ó:€CˆÓ:Ù(Ø�j¨%ñ€J�ó ð ó0ó ó0r#   r–   N)%r,   Ú
__future__r   Útypingr   r   Ú	pptx.oxmlr   Úpptx.oxml.chart.chartr   Úpptx.oxml.nsr   Úpptx.oxml.shapes.sharedr	   Úpptx.oxml.simpletypesr
   r   Úpptx.oxml.tabler   Úpptx.oxml.xmlchemyr   r   r   r   r   Ú	pptx.specr   r   r   r   r   r   r   r   rM   rO   r–   r$   r#   r!   Ú<module>r¥      s‡   ðÙ Hå "ç &å Ý *Ý  Ý 4ß 7Ý $÷õ ÷ñ ö ÷ñ ô&˜ô &ô"A0Ð-ô A0ôH}Ð.ô }ô@ ô ô0�?õ 0r#   