
    ~Zi                        S r SSKJr  SSKJrJrJr  SSKJrJ	r	J
r
  SSKJrJrJrJr  \(       a  SSKJr   " S S\5      r " S	 S
\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      rg)z=Custom element classes for presentation-related XML elements.    )annotations)TYPE_CHECKINGCallablecast)
ST_SlideIdST_SlideSizeCoordinate	XsdString)BaseOxmlElementRequiredAttribute
ZeroOrMore	ZeroOrOne)Lengthc                      \ rS rSr% SrS\S'   S\S'   S\S'   \" S	S
S9rS\S'   \" SSS9rS\S'   \" SSS9r	S\S'   Sr
g)CT_Presentation   zZ`p:presentation` element, root of the Presentation part stored as `/ppt/presentation.xml`.zCallable[[], CT_SlideSize]get_or_add_sldSzzCallable[[], CT_SlideIdList]get_or_add_sldIdLstz"Callable[[], CT_SlideMasterIdList]get_or_add_sldMasterIdLstzp:sldMasterIdLst)zp:notesMasterIdLstzp:handoutMasterIdLst
p:sldIdLstp:sldSz	p:notesSz)
successorszCT_SlideMasterIdList | NonesldMasterIdLstr   )r   r   zCT_SlideIdList | NonesldIdLstr   )r   zCT_SlideSize | NonesldSz N)__name__
__module____qualname____firstlineno____doc____annotations__r   r   r   r   __static_attributes__r       p/var/www/eduai.edurigo.com/question_generate/ques_gen_env/lib/python3.13/site-packages/pptx/oxml/presentation.pyr   r      si    d0055AA 			
 /  '0!9'H#  "+n"E r$   r   c                  R    \ rS rSr% Sr\" S\5      rS\S'   \" S\	5      r
S\S'   Srg	)

CT_SlideId)   zr`p:sldId` element.

Direct child of `p:sldIdLst` that contains an `rId` reference to a slide in the presentation.
idintr:idstrrIdr   N)r   r   r   r    r!   r   r   r)   r"   r	   r-   r#   r   r$   r%   r'   r'   )   s+    
  j1B1 3C3r$   r'   c                  \    \ rS rSr% SrS\S'   S\S'   \" S5      rSS jr\	SS	 j5       r
S
rg)CT_SlideIdList3   zu`p:sldIdLst` element.

Direct child of <p:presentation> that contains a list of the slide parts in the presentation.
zlist[CT_SlideId]	sldId_lstzCallable[..., CT_SlideId]
_add_sldIdzp:sldIdc                6    U R                  U R                  US9$ )zCreate and return a reference to a new `p:sldId` child element.

The new `p:sldId` element has its r:id attribute set to `rId`.
)r)   r-   )r2   _next_id)selfr-   s     r%   	add_sldIdCT_SlideIdList.add_sldId>   s    
 $--S99r$   c                ,  ^^ SmSm[        SU R                  S5      5       Vs/ s H  n[        U5      PM     nn[        TS-
  /U-   5      S-   nUT::  a  U$ [	        UU4S jU 5       5      nU(       a  [        S [        UTS9 5       5      $ S$ s  snf )	zThe next available slide ID as an `int`.

Valid slide IDs start at 256. The next integer value greater than the max value in use is
chosen, which minimizes that chance of reusing the id of a deleted slide.
   iz	list[str]z./p:sldId/@id   c              3  N   >#    U  H  nTUs=::  a  T::  d  M  O  M  Uv   M     g 7fNr   ).0r)   MAX_SLIDE_IDMIN_SLIDE_IDs     r%   	<genexpr>*CT_SlideIdList._next_id.<locals>.<genexpr>U   s#     ^Xr,":\P\:\:\Xs   %%	%c              3  8   #    U  H  u  pX:w  d  M  Uv   M     g 7fr<   r   )r=   candidate_idused_ids      r%   r@   rA   W   s"      -Z)L* -Zs   	)start)r   xpathr*   maxsortednext	enumerate)r5   sused_idssimple_nextvalid_used_idsr>   r?   s        @@r%   r4   CT_SlideIdList._next_idE   s     !$(djj6Q$RS$RqCF$RS<!+,x781<,&  ^X^^   -6~\-Z 	
 	
 Ts   Br   N)r-   r,   returnr'   )rP   r*   )r   r   r   r    r!   r"   r   sldIdr6   propertyr4   r#   r   r$   r%   r/   r/   3   s8    
  ))y!E: 
 
r$   r/   c                  4    \ rS rSr% SrS\S'   \" S5      rSrg)CT_SlideMasterIdLista   z`p:sldMasterIdLst` element.

Child of `p:presentation` containing references to the slide masters that belong to the
presentation.
zlist[CT_SlideMasterIdListEntry]sldMasterId_lstzp:sldMasterIdr   N)	r   r   r   r    r!   r"   r   sldMasterIdr#   r   r$   r%   rT   rT   a   s     54_-Kr$   rT   c                  6    \ rS rSr% Sr\" S\5      rS\S'   Sr	g)CT_SlideMasterIdListEntrym   zh
``<p:sldMasterId>`` element, child of ``<p:sldMasterIdLst>`` containing
a reference to a slide master.
r+   r,   r-   r   N)
r   r   r   r    r!   r   r	   r-   r"   r#   r   r$   r%   rY   rY   m   s    
 !3C3r$   rY   c                  R    \ rS rSr% Sr\" S\5      rS\S'   \" S\5      r	S\S'   Sr
g)CT_SlideSizev   zw`p:sldSz` element.

Direct child of <p:presentation> that contains the width and height of slides in the
presentation.
cxr   cyr   N)r   r   r   r    r!   r   r   r^   r"   r_   r#   r   r$   r%   r\   r\   v   s9     #$B  #$B r$   r\   N)r!   
__future__r   typingr   r   r   pptx.oxml.simpletypesr   r   r	   pptx.oxml.xmlchemyr
   r   r   r   	pptx.utilr   r   r'   r/   rT   rY   r\   r   r$   r%   <module>re      sl    C " 0 0 O O X X o 64 4+
_ +
\	.? 	.4 4? r$   