a
    bEE                     @   sX  d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZ d dlmZmZ d dlmZ d dlmZ ddlmZ ddlmZmZmZ dd	lmZ d d
l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#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(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-G d*d+ d+eZ.G d,d- d-eZ/G d.d/ d/eZ0G d0d1 d1eZ1G d2d3 d3eZ2G d4d5 d5eZ3G d6d7 d7eZ4G d8d9 d9eZ5G d:d; d;eZ6G d<d= d=eZ7G d>d? d?eZ8G d@dA dAeZ9dBS )C    )Serialisable)	TypedFloatIntegerBoolMinMaxSetNoneSetStringAlias)
Coordinate
Percentage)EmptyTag)ExtensionList   )ColorChoiceDescriptor)GradientFillPropertiesBlipFillPropertiesPatternFillProperties)LineProperties)Color)
DRAWING_NSc                   @   s*   e Zd ZdZeZe Ze ZdddZ	dS )Point2DoffNc                 C   s   || _ || _d S Nxyselfr   r    r    i/Users/vegardjervell/Documents/master/model/venv/lib/python3.9/site-packages/openpyxl/drawing/geometry.py__init__*   s    zPoint2D.__init__)NN)
__name__
__module____qualname__tagnamer   	namespacer   r   r   r"   r    r    r    r!   r   "   s     r   c                   @   s:   e Zd ZdZeZe ZedZ	e Z
edZdddZdS )PositiveSize2DextcxcyNc                 C   s   || _ || _d S r   )r*   r+   )r   r*   r+   r    r    r!   r"   @   s    zPositiveSize2D.__init__)NN)r#   r$   r%   r&   r   r'   r   r*   r   widthr+   heightr"   r    r    r    r!   r(   2   s     r(   c                   @   sp   e Zd ZdZeZeddZeddZ	eddZ
eeddZeeddZeeddZeeddZdZd	ddZdS )
Transform2DxfrmT
allow_noneexpected_typer1   r   r)   chOffchExtNc                 C   s.   || _ || _|| _|| _|| _|| _|| _d S r   rotflipHflipVr   r)   r5   r6   r   r8   r9   r:   r   r)   r5   r6   r    r    r!   r"   W   s    	zTransform2D.__init__)NNNNNNNr#   r$   r%   r&   r   r'   r   r8   r   r9   r:   r   r   r   r(   r)   r5   r6   Z__elements__r"   r    r    r    r!   r.   H   s$   


       r.   c                   @   sp   e Zd ZdZeZeddZeddZ	eddZ
eeddZeeddZeeddZeeddZdZd
dd	ZdS )GroupTransform2Dr/   Tr0   r2   r4   r   Nc                 C   s.   || _ || _|| _|| _|| _|| _|| _d S r   r7   r;   r    r    r!   r"   x   s    	zGroupTransform2D.__init__)r   NNNNNNr<   r    r    r    r!   r=   i   s$   


       r=   c                   @   s,   e Zd ZdZe Ze Ze ZdddZdS )SphereCoordsZsphereCoordsNc                 C   s   || _ || _|| _d S r   )latlonrev)r   r?   r@   rA   r    r    r!   r"      s    zSphereCoords.__init__)NNN)	r#   r$   r%   r&   r   r?   r@   rA   r"   r    r    r    r!   r>      s      r>   c                   @   sJ   e Zd ZdZeg ddZeddZee	ddZ
eeddZd
dd	ZdS )Cameracamera)>ZlegacyObliqueTopLeftZlegacyObliqueTopZlegacyObliqueTopRightZlegacyObliqueLeftZlegacyObliqueFrontZlegacyObliqueRightZlegacyObliqueBottomLeftZlegacyObliqueBottomZlegacyObliqueBottomRightZlegacyPerspectiveTopLeftZlegacyPerspectiveTopZlegacyPerspectiveTopRightZlegacyPerspectiveLeftZlegacyPerspectiveFrontZlegacyPerspectiveRightZlegacyPerspectiveBottomLeftZlegacyPerspectiveBottomZlegacyPerspectiveBottomRightZorthographicFrontZisometricTopUpZisometricTopDownZisometricBottomUpZisometricBottomDownZisometricLeftUpZisometricLeftDownZisometricRightUpZisometricRightDownZisometricOffAxis1LeftZisometricOffAxis1RightZisometricOffAxis1TopZisometricOffAxis2LeftZisometricOffAxis2RightZisometricOffAxis2TopZisometricOffAxis3LeftZisometricOffAxis3RightZisometricOffAxis3BottomZisometricOffAxis4LeftZisometricOffAxis4RightZisometricOffAxis4BottomZobliqueTopLeftZ
obliqueTopZobliqueTopRightZobliqueLeftZobliqueRightZobliqueBottomLeftZobliqueBottomZobliqueBottomRightZperspectiveFrontZperspectiveLeftZperspectiveRightZperspectiveAboveZperspectiveBelowZperspectiveAboveLeftFacingZperspectiveAboveRightFacingZ perspectiveContrastingLeftFacingZ!perspectiveContrastingRightFacingZperspectiveHeroicLeftFacingZperspectiveHeroicRightFacingZ"perspectiveHeroicExtremeLeftFacingZ#perspectiveHeroicExtremeRightFacingZperspectiveRelaxedZperspectiveRelaxedModeratelyvaluesTr0   r2   Nc                 C   s   || _ || _|| _|| _d S r   )prstfovzoomr8   )r   rF   rG   rH   r8   r    r    r!   r"      s    zCamera.__init__)NNNN)r#   r$   r%   r&   r   rF   r   rG   r   r   rH   r>   r8   r"   r    r    r    r!   rB      s   
    rB   c                   @   sB   e Zd ZdZeg ddZeg ddZeeddZ	d
dd	Z
dS )LightRiglightRig)ZlegacyFlat1ZlegacyFlat2ZlegacyFlat3ZlegacyFlat4ZlegacyNormal1ZlegacyNormal2ZlegacyNormal3ZlegacyNormal4ZlegacyHarsh1ZlegacyHarsh2ZlegacyHarsh3ZlegacyHarsh4ZthreePtZbalancedZsoftZharshZfloodZcontrastingZmorningZsunriseZsunsetZchillyZfreezingflatZtwoPtZglowZ
brightRoomrD   )tlttrlrblbbrTr2   Nc                 C   s   || _ || _|| _d S r   )rigdirr8   )r   rT   rU   r8   r    r    r!   r"      s    zLightRig.__init__)NNN)r#   r$   r%   r&   r   rT   rU   r   r>   r8   r"   r    r    r    r!   rI      s      rI   c                   @   s,   e Zd ZdZe Ze Ze ZdddZdS )Vector3DZvectorNc                 C   s   || _ || _|| _d S r   )dxdydz)r   rW   rX   rY   r    r    r!   r"      s    zVector3D.__init__)NNN)	r#   r$   r%   r&   r   rW   rX   rY   r"   r    r    r    r!   rV      s      rV   c                   @   s,   e Zd ZdZe Ze Ze ZdddZdS )Point3DanchorNc                 C   s   || _ || _|| _d S r   )r   r   z)r   r   r   r\   r    r    r!   r"      s    zPoint3D.__init__)NNN)	r#   r$   r%   r&   r   r   r   r\   r"   r    r    r    r!   rZ      s      rZ   c                   @   s@   e Zd ZeedZeedZeedZee	ddZ
dddZdS )Backdropr3   Tr2   Nc                 C   s   || _ || _|| _|| _d S r   )r[   normupextLst)r   r[   r_   r`   ra   r    r    r!   r"     s    zBackdrop.__init__)NNNN)r#   r$   r%   r   rZ   r[   rV   r_   r`   OfficeArtExtensionListra   r"   r    r    r    r!   r]     s   


    r]   c                   @   sB   e Zd ZeedZeedZeeddZ	ee
ddZdddZdS )Scene3Dr^   Tr2   Nc                 C   s   || _ || _|| _|| _d S r   )rC   rJ   backdropra   )r   rC   rJ   rd   ra   r    r    r!   r"     s    zScene3D.__init__)NNNN)r#   r$   r%   r   rB   rC   rI   rJ   r]   rd   rb   ra   r"   r    r    r    r!   rc     s   

    rc   c                   @   s4   e Zd ZdZe Ze Zeg ddZdddZ	dS )Bevelbevel)ZrelaxedInsetZcircleZslopeZcrossZangleZ	softRoundZconvexZ	coolSlantZdivotZribletZhardEdgeZartDecorD   Nc                 C   s   || _ || _|| _d S r   )whrF   )r   rg   rh   rF   r    r    r!   r"   3  s    zBevel.__init__)NNN)
r#   r$   r%   r&   r   rg   rh   r	   rF   r"   r    r    r    r!   re   '  s      re   c                	   @   s   e Zd ZeZeeddZeddZ	eddZ
eg ddZeeddZeeddZeeddZeeddZeeddZd	ddZdS )
Shape3DTr2   r0   )ZlegacyMatteZlegacyPlasticZlegacyMetalZlegacyWireframeZmatteZplasticZmetalZ	warmMatteZtranslucentPowderZpowderZdkEdgeZsoftEdgeclearrK   Z	softmetalrD   Nc
           
      C   s:   || _ || _|| _|| _|| _|| _|| _|| _|	| _d S r   )	r\   
extrusionHcontourWprstMaterialbevelTbevelBextrusionClr
contourClrra   )
r   r\   rk   rl   rm   rn   ro   rp   rq   ra   r    r    r!   r"   O  s    zShape3D.__init__)	NNNNNNNNN)r#   r$   r%   r   r'   r   r   r\   r   rk   rl   r	   rm   re   rn   ro   r   rp   rq   rb   ra   r"   r    r    r    r!   ri   =  s(   

         ri   c                   @   sD   e Zd Ze Ze Zeg ddZeddZ	eddZ
dddZdS )	Path2D)r_   ZlightenZlightenLessZdarkenZ
darkenLessrD   Tr0   Nc                 C   s"   || _ || _|| _|| _|| _d S r   )rg   rh   fillstrokeextrusionOk)r   rg   rh   rs   rt   ru   r    r    r!   r"   m  s
    zPath2D.__init__)NNNNN)r#   r$   r%   r   rg   rh   r	   rs   r   rt   ru   r"   r    r    r    r!   rr   e  s   

     rr   c                   @   s"   e Zd ZeeddZdddZdS )
Path2DListTr2   Nc                 C   s
   || _ d S r   )path)r   rw   r    r    r!   r"     s    zPath2DList.__init__)N)r#   r$   r%   r   rr   rw   r"   r    r    r    r!   rv   {  s    rv   c                   @   s.   e Zd Ze Ze Ze Ze ZdddZdS )GeomRectNc                 C   s   || _ || _|| _|| _d S r   )rO   rM   rP   rR   )r   rO   rM   rP   rR   r    r    r!   r"     s    zGeomRect.__init__)NNNN)	r#   r$   r%   r   rO   rM   rP   rR   r"   r    r    r    r!   rx     s       rx   c                   @   s"   e Zd Ze Ze ZdddZdS )
AdjPoint2DNc                 C   s   || _ || _d S r   r   r   r    r    r!   r"     s    zAdjPoint2D.__init__)NN)r#   r$   r%   r   r   r   r"   r    r    r    r!   ry     s
     ry   c                   @   s,   e Zd ZedddZeedZdddZdS )	ConnectionSiter   ih  )minmaxr^   Nc                 C   s   || _ || _d S r   )angpos)r   r}   r~   r    r    r!   r"     s    zConnectionSite.__init__)NN)	r#   r$   r%   r   r}   r   ry   r~   r"   r    r    r    r!   rz     s
   
  rz   c                   @   s"   e Zd ZeeddZdddZdS )ConnectionSiteListTr2   Nc                 C   s
   || _ d S r   )cxn)r   r   r    r    r!   r"     s    zConnectionSiteList.__init__)N)r#   r$   r%   r   rz   r   r"   r    r    r    r!   r     s    r   c                   @   s   e Zd ZdS )AdjustHandleListN)r#   r$   r%   r    r    r    r!   r     s   r   c                   @   s"   e Zd Ze Ze ZdddZdS )	GeomGuideNc                 C   s   || _ || _d S r   )namefmla)r   r   r   r    r    r!   r"     s    zGeomGuide.__init__)NN)r#   r$   r%   r
   r   r   r"   r    r    r    r!   r     s
     r   c                   @   s"   e Zd ZeeddZdddZdS )GeomGuideListTr2   Nc                 C   s
   || _ d S r   )gd)r   r   r    r    r!   r"     s    zGeomGuideList.__init__)N)r#   r$   r%   r   r   r   r"   r    r    r    r!   r     s    r   c                   @   sP   e Zd ZeeddZeeddZeeddZee	ddZ
eedZdddZdS )CustomGeometry2DTr2   r^   Nc                 C   s(   || _ || _|| _|| _d | _|| _d S r   )avLstgdLstahLstcxnLstrectpathLst)r   r   r   r   r   r   r   r    r    r!   r"     s    zCustomGeometry2D.__init__)NNNNNN)r#   r$   r%   r   r   r   r   r   r   r   r   rv   r   r"   r    r    r    r!   r     s   
      r   c                   @   s4   e Zd ZeZeg ddZeeddZ	dddZ
dS )	PresetGeometry2D)lineZlineInvZtriangleZ
rtTriangler   ZdiamondZparallelogramZ	trapezoidZnonIsoscelesTrapezoidZpentagonZhexagonZheptagonZoctagonZdecagonZ	dodecagonZstar4Zstar5Zstar6Zstar7Zstar8Zstar10Zstar12Zstar16Zstar24Zstar32Z	roundRectZ
round1RectZround2SameRectZround2DiagRectZsnipRoundRectZ	snip1RectZsnip2SameRectZsnip2DiagRectZplaqueZellipseZteardropZ	homePlateZchevronZpieWedgeZpieZblockArcZdonutZ	noSmokingZ
rightArrowZ	leftArrowZupArrowZ	downArrowZstripedRightArrowZnotchedRightArrowZbentUpArrowZleftRightArrowZupDownArrowZleftUpArrowZleftRightUpArrowZ	quadArrowZleftArrowCalloutZrightArrowCalloutZupArrowCalloutZdownArrowCalloutZleftRightArrowCalloutZupDownArrowCalloutZquadArrowCalloutZ	bentArrowZ
uturnArrowZcircularArrowZleftCircularArrowZleftRightCircularArrowZcurvedRightArrowZcurvedLeftArrowZcurvedUpArrowZcurvedDownArrowZswooshArrowZcubeZcanZlightningBoltZheartsunZmoonZ
smileyFaceZirregularSeal1ZirregularSeal2ZfoldedCornerrf   frameZ	halfFrameZcornerZ
diagStripeZchordZarcZleftBracketZrightBracketZ	leftBraceZ
rightBraceZbracketPairZ	bracePairZstraightConnector1ZbentConnector2ZbentConnector3ZbentConnector4ZbentConnector5ZcurvedConnector2ZcurvedConnector3ZcurvedConnector4ZcurvedConnector5Zcallout1Zcallout2Zcallout3ZaccentCallout1ZaccentCallout2ZaccentCallout3ZborderCallout1ZborderCallout2ZborderCallout3ZaccentBorderCallout1ZaccentBorderCallout2ZaccentBorderCallout3ZwedgeRectCalloutZwedgeRoundRectCalloutZwedgeEllipseCalloutZcloudCalloutZcloudZribbonZribbon2ZellipseRibbonZellipseRibbon2ZleftRightRibbonZverticalScrollZhorizontalScrollZwaveZ
doubleWaveplusZflowChartProcessZflowChartDecisionZflowChartInputOutputZflowChartPredefinedProcessZflowChartInternalStorageZflowChartDocumentZflowChartMultidocumentZflowChartTerminatorZflowChartPreparationZflowChartManualInputZflowChartManualOperationZflowChartConnectorZflowChartPunchedCardZflowChartPunchedTapeZflowChartSummingJunctionZflowChartOrZflowChartCollateZflowChartSortZflowChartExtractZflowChartMergeZflowChartOfflineStorageZflowChartOnlineStorageZflowChartMagneticTapeZflowChartMagneticDiskZflowChartMagneticDrumZflowChartDisplayZflowChartDelayZflowChartAlternateProcessZflowChartOffpageConnectorZactionButtonBlankZactionButtonHomeZactionButtonHelpZactionButtonInformationZactionButtonForwardNextZactionButtonBackPreviousZactionButtonEndZactionButtonBeginningZactionButtonReturnZactionButtonDocumentZactionButtonSoundZactionButtonMovieZgear6Zgear9ZfunnelZmathPlusZ	mathMinusZmathMultiplyZ
mathDivideZ	mathEqualZmathNotEqualZ
cornerTabsZ
squareTabsZ
plaqueTabsZchartXZ	chartStarZ	chartPlusrD   Tr2   Nc                 C   s   || _ || _d S r   )rF   r   )r   rF   r   r    r    r!   r"   '  s    zPresetGeometry2D.__init__)NN)r#   r$   r%   r   r'   r   rF   r   r   r   r"   r    r    r    r!   r     s   1  r   c                   @   s$   e Zd ZeddgdZdddZdS )FontReferencemajorminorrD   Nc                 C   s
   || _ d S r   idxr   r   r    r    r!   r"   3  s    zFontReference.__init__)N)r#   r$   r%   r	   r   r"   r    r    r    r!   r   /  s    r   c                   @   s   e Zd Ze ZdddZdS )StyleMatrixReferenceNc                 C   s
   || _ d S r   r   r   r    r    r!   r"   =  s    zStyleMatrixReference.__init__)N)r#   r$   r%   r   r   r"   r    r    r    r!   r   9  s    r   c                   @   s>   e Zd ZeedZeedZeedZeedZ	dddZ
dS )
ShapeStyler^   Nc                 C   s   || _ || _|| _|| _d S r   )lnReffillRef	effectReffontRef)r   r   r   r   r   r    r    r!   r"   J  s    zShapeStyle.__init__)NNNN)r#   r$   r%   r   r   r   r   r   r   r   r"   r    r    r    r!   r   C  s   



    r   N):Z!openpyxl.descriptors.serialisabler   Zopenpyxl.descriptorsr   r   r   r   r   r   r	   r
   r   Zopenpyxl.descriptors.excelr   r   Zopenpyxl.descriptors.nestedr   r   rb   colorsr   rs   r   r   r   r   r   Zopenpyxl.styles.colorsr   Zopenpyxl.xml.constantsr   r   r(   r.   r=   r>   rB   rI   rV   rZ   r]   rc   re   ri   rr   rv   rx   ry   rz   r   r   r   r   r   r   r   r   r   r    r    r    r!   <module>   sH   ,!!*(


?

