Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/openpyxl/drawing/graphic.py: 63%

97 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1# Copyright (c) 2010-2022 openpyxl 

2 

3from openpyxl.xml.functions import NS_REGEX, Element 

4from openpyxl.xml.constants import CHART_NS, REL_NS, DRAWING_NS 

5 

6from openpyxl.descriptors.serialisable import Serialisable 

7from openpyxl.descriptors import ( 

8 Typed, 

9 Bool, 

10 NoneSet, 

11 Integer, 

12 Set, 

13 String, 

14 Alias, 

15) 

16from openpyxl.descriptors.excel import ExtensionList as OfficeArtExtensionList 

17 

18from openpyxl.chart.shapes import GraphicalProperties 

19from openpyxl.chart.text import RichText 

20 

21from .effect import * 

22from .fill import RelativeRect, BlipFillProperties 

23from .text import Hyperlink, EmbeddedWAVAudioFile 

24from .geometry import ( 

25 Scene3D, 

26 ShapeStyle, 

27 GroupTransform2D 

28) 

29from .picture import PictureFrame 

30from .properties import ( 

31 NonVisualDrawingProps, 

32 NonVisualDrawingShapeProps, 

33 NonVisualGroupDrawingShapeProps, 

34 NonVisualGroupShape, 

35 GroupShapeProperties, 

36) 

37from .relation import ChartRelation 

38from .xdr import XDRTransform2D 

39 

40 

41class GraphicFrameLocking(Serialisable): 

42 

43 noGrp = Bool(allow_none=True) 

44 noDrilldown = Bool(allow_none=True) 

45 noSelect = Bool(allow_none=True) 

46 noChangeAspect = Bool(allow_none=True) 

47 noMove = Bool(allow_none=True) 

48 noResize = Bool(allow_none=True) 

49 extLst = Typed(expected_type=OfficeArtExtensionList, allow_none=True) 

50 

51 def __init__(self, 

52 noGrp=None, 

53 noDrilldown=None, 

54 noSelect=None, 

55 noChangeAspect=None, 

56 noMove=None, 

57 noResize=None, 

58 extLst=None, 

59 ): 

60 self.noGrp = noGrp 

61 self.noDrilldown = noDrilldown 

62 self.noSelect = noSelect 

63 self.noChangeAspect = noChangeAspect 

64 self.noMove = noMove 

65 self.noResize = noResize 

66 self.extLst = extLst 

67 

68 

69class NonVisualGraphicFrameProperties(Serialisable): 

70 

71 tagname = "cNvGraphicFramePr" 

72 

73 graphicFrameLocks = Typed(expected_type=GraphicFrameLocking, allow_none=True) 

74 extLst = Typed(expected_type=OfficeArtExtensionList, allow_none=True) 

75 

76 def __init__(self, 

77 graphicFrameLocks=None, 

78 extLst=None, 

79 ): 

80 self.graphicFrameLocks = graphicFrameLocks 

81 self.extLst = extLst 

82 

83 

84class NonVisualGraphicFrame(Serialisable): 

85 

86 tagname = "nvGraphicFramePr" 

87 

88 cNvPr = Typed(expected_type=NonVisualDrawingProps) 

89 cNvGraphicFramePr = Typed(expected_type=NonVisualGraphicFrameProperties) 

90 

91 __elements__ = ('cNvPr', 'cNvGraphicFramePr') 

92 

93 def __init__(self, 

94 cNvPr=None, 

95 cNvGraphicFramePr=None, 

96 ): 

97 if cNvPr is None: 

98 cNvPr = NonVisualDrawingProps(id=0, name="Chart 0") 

99 self.cNvPr = cNvPr 

100 if cNvGraphicFramePr is None: 

101 cNvGraphicFramePr = NonVisualGraphicFrameProperties() 

102 self.cNvGraphicFramePr = cNvGraphicFramePr 

103 

104 

105class GraphicData(Serialisable): 

106 

107 tagname = "graphicData" 

108 namespace = DRAWING_NS 

109 

110 uri = String() 

111 chart = Typed(expected_type=ChartRelation, allow_none=True) 

112 

113 

114 def __init__(self, 

115 uri=CHART_NS, 

116 chart=None, 

117 ): 

118 self.uri = uri 

119 self.chart = chart 

120 

121 

122class GraphicObject(Serialisable): 

123 

124 tagname = "graphic" 

125 namespace = DRAWING_NS 

126 

127 graphicData = Typed(expected_type=GraphicData) 

128 

129 def __init__(self, 

130 graphicData=None, 

131 ): 

132 if graphicData is None: 

133 graphicData = GraphicData() 

134 self.graphicData = graphicData 

135 

136 

137class GraphicFrame(Serialisable): 

138 

139 tagname = "graphicFrame" 

140 

141 nvGraphicFramePr = Typed(expected_type=NonVisualGraphicFrame) 

142 xfrm = Typed(expected_type=XDRTransform2D) 

143 graphic = Typed(expected_type=GraphicObject) 

144 macro = String(allow_none=True) 

145 fPublished = Bool(allow_none=True) 

146 

147 __elements__ = ('nvGraphicFramePr', 'xfrm', 'graphic', 'macro', 'fPublished') 

148 

149 def __init__(self, 

150 nvGraphicFramePr=None, 

151 xfrm=None, 

152 graphic=None, 

153 macro=None, 

154 fPublished=None, 

155 ): 

156 if nvGraphicFramePr is None: 

157 nvGraphicFramePr = NonVisualGraphicFrame() 

158 self.nvGraphicFramePr = nvGraphicFramePr 

159 if xfrm is None: 

160 xfrm = XDRTransform2D() 

161 self.xfrm = xfrm 

162 if graphic is None: 

163 graphic = GraphicObject() 

164 self.graphic = graphic 

165 self.macro = macro 

166 self.fPublished = fPublished 

167 

168 

169class GroupShape(Serialisable): 

170 

171 nvGrpSpPr = Typed(expected_type=NonVisualGroupShape) 

172 nonVisualProperties = Alias("nvGrpSpPr") 

173 grpSpPr = Typed(expected_type=GroupShapeProperties) 

174 visualProperties = Alias("grpSpPr") 

175 pic = Typed(expected_type=PictureFrame, allow_none=True) 

176 

177 __elements__ = ["nvGrpSpPr", "grpSpPr", "pic"] 

178 

179 def __init__(self, 

180 nvGrpSpPr=None, 

181 grpSpPr=None, 

182 pic=None, 

183 ): 

184 self.nvGrpSpPr = nvGrpSpPr 

185 self.grpSpPr = grpSpPr 

186 self.pic = pic