PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.4.8
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.4.8
4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 3.10.4 All 148 releases
visualizer / vendor / phpoffice / phpspreadsheet / src / PhpSpreadsheet / Comment.php

Comment.php in Visualizer – Tables & Charts Manager with Built-in AI Generator 3.4.8, at vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php

332 lines 5.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace PhpOffice\PhpSpreadsheet;
4
5 use PhpOffice\PhpSpreadsheet\RichText\RichText;
6
7 class Comment implements IComparable
8 {
9 /**
10 * Author.
11 *
12 * @var string
13 */
14 private $author;
15
16 /**
17 * Rich text comment.
18 *
19 * @var RichText
20 */
21 private $text;
22
23 /**
24 * Comment width (CSS style, i.e. XXpx or YYpt).
25 *
26 * @var string
27 */
28 private $width = '96pt';
29
30 /**
31 * Left margin (CSS style, i.e. XXpx or YYpt).
32 *
33 * @var string
34 */
35 private $marginLeft = '59.25pt';
36
37 /**
38 * Top margin (CSS style, i.e. XXpx or YYpt).
39 *
40 * @var string
41 */
42 private $marginTop = '1.5pt';
43
44 /**
45 * Visible.
46 *
47 * @var bool
48 */
49 private $visible = false;
50
51 /**
52 * Comment height (CSS style, i.e. XXpx or YYpt).
53 *
54 * @var string
55 */
56 private $height = '55.5pt';
57
58 /**
59 * Comment fill color.
60 *
61 * @var Style\Color
62 */
63 private $fillColor;
64
65 /**
66 * Alignment.
67 *
68 * @var string
69 */
70 private $alignment;
71
72 /**
73 * Create a new Comment.
74 */
75 public function __construct()
76 {
77 // Initialise variables
78 $this->author = 'Author';
79 $this->text = new RichText();
80 $this->fillColor = new Style\Color('FFFFFFE1');
81 $this->alignment = Style\Alignment::HORIZONTAL_GENERAL;
82 }
83
84 /**
85 * Get Author.
86 *
87 * @return string
88 */
89 public function getAuthor()
90 {
91 return $this->author;
92 }
93
94 /**
95 * Set Author.
96 *
97 * @param string $author
98 *
99 * @return Comment
100 */
101 public function setAuthor($author)
102 {
103 $this->author = $author;
104
105 return $this;
106 }
107
108 /**
109 * Get Rich text comment.
110 *
111 * @return RichText
112 */
113 public function getText()
114 {
115 return $this->text;
116 }
117
118 /**
119 * Set Rich text comment.
120 *
121 * @param RichText $pValue
122 *
123 * @return Comment
124 */
125 public function setText(RichText $pValue)
126 {
127 $this->text = $pValue;
128
129 return $this;
130 }
131
132 /**
133 * Get comment width (CSS style, i.e. XXpx or YYpt).
134 *
135 * @return string
136 */
137 public function getWidth()
138 {
139 return $this->width;
140 }
141
142 /**
143 * Set comment width (CSS style, i.e. XXpx or YYpt).
144 *
145 * @param string $width
146 *
147 * @return Comment
148 */
149 public function setWidth($width)
150 {
151 $this->width = $width;
152
153 return $this;
154 }
155
156 /**
157 * Get comment height (CSS style, i.e. XXpx or YYpt).
158 *
159 * @return string
160 */
161 public function getHeight()
162 {
163 return $this->height;
164 }
165
166 /**
167 * Set comment height (CSS style, i.e. XXpx or YYpt).
168 *
169 * @param string $value
170 *
171 * @return Comment
172 */
173 public function setHeight($value)
174 {
175 $this->height = $value;
176
177 return $this;
178 }
179
180 /**
181 * Get left margin (CSS style, i.e. XXpx or YYpt).
182 *
183 * @return string
184 */
185 public function getMarginLeft()
186 {
187 return $this->marginLeft;
188 }
189
190 /**
191 * Set left margin (CSS style, i.e. XXpx or YYpt).
192 *
193 * @param string $value
194 *
195 * @return Comment
196 */
197 public function setMarginLeft($value)
198 {
199 $this->marginLeft = $value;
200
201 return $this;
202 }
203
204 /**
205 * Get top margin (CSS style, i.e. XXpx or YYpt).
206 *
207 * @return string
208 */
209 public function getMarginTop()
210 {
211 return $this->marginTop;
212 }
213
214 /**
215 * Set top margin (CSS style, i.e. XXpx or YYpt).
216 *
217 * @param string $value
218 *
219 * @return Comment
220 */
221 public function setMarginTop($value)
222 {
223 $this->marginTop = $value;
224
225 return $this;
226 }
227
228 /**
229 * Is the comment visible by default?
230 *
231 * @return bool
232 */
233 public function getVisible()
234 {
235 return $this->visible;
236 }
237
238 /**
239 * Set comment default visibility.
240 *
241 * @param bool $value
242 *
243 * @return Comment
244 */
245 public function setVisible($value)
246 {
247 $this->visible = $value;
248
249 return $this;
250 }
251
252 /**
253 * Get fill color.
254 *
255 * @return Style\Color
256 */
257 public function getFillColor()
258 {
259 return $this->fillColor;
260 }
261
262 /**
263 * Set Alignment.
264 *
265 * @param string $alignment see Style\Alignment::HORIZONTAL_*
266 *
267 * @return Comment
268 */
269 public function setAlignment($alignment)
270 {
271 $this->alignment = $alignment;
272
273 return $this;
274 }
275
276 /**
277 * Get Alignment.
278 *
279 * @return string
280 */
281 public function getAlignment()
282 {
283 return $this->alignment;
284 }
285
286 /**
287 * Get hash code.
288 *
289 * @return string Hash code
290 */
291 public function getHashCode()
292 {
293 return md5(
294 $this->author .
295 $this->text->getHashCode() .
296 $this->width .
297 $this->height .
298 $this->marginLeft .
299 $this->marginTop .
300 ($this->visible ? 1 : 0) .
301 $this->fillColor->getHashCode() .
302 $this->alignment .
303 __CLASS__
304 );
305 }
306
307 /**
308 * Implement PHP __clone to create a deep clone, not just a shallow copy.
309 */
310 public function __clone()
311 {
312 $vars = get_object_vars($this);
313 foreach ($vars as $key => $value) {
314 if (is_object($value)) {
315 $this->$key = clone $value;
316 } else {
317 $this->$key = $value;
318 }
319 }
320 }
321
322 /**
323 * Convert to string.
324 *
325 * @return string
326 */
327 public function __toString()
328 {
329 return $this->text->getPlainText();
330 }
331 }
332