File Source for Comment.php

PHPExcel

# Source for file Comment.php

Documentation is available at Comment.php

1. <?php
2. /**
3. * PHPExcel
4. *
5. * Copyright (c) 2006 - 2011 PHPExcel
6. *
7. * This library is free software; you can redistribute it and/or
8. * modify it under the terms of the GNU Lesser General Public
9. * License as published by the Free Software Foundation; either
10. * version 2.1 of the License, or (at your option) any later version.
11. *
12. * This library is distributed in the hope that it will be useful,
13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15. * Lesser General Public License for more details.
16. *
17. * You should have received a copy of the GNU Lesser General Public
18. * License along with this library; if not, write to the Free Software
19. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20. *
21. * @category PHPExcel
22. * @package PHPExcel
23. * @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
24. * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
25. * @version 1.7.6, 2011-02-27
26. */
29. /**
30. * PHPExcel_Comment
31. *
32. * @category PHPExcel
33. * @package PHPExcel
34. * @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
35. */
36. class PHPExcel_Comment implements PHPExcel_IComparable
37. {
38. /**
39. * Author
40. *
41. * @var string
42. */
43. private $_author;
45. /**
46. * Rich text comment
47. *
48. * @var PHPExcel_RichText
49. */
50. private $_text;
52. /**
53. * Comment width (CSS style, i.e. XXpx or YYpt)
54. *
55. * @var string
56. */
57. private $_width = '96pt';
59. /**
60. * Left margin (CSS style, i.e. XXpx or YYpt)
61. *
62. * @var string
63. */
64. private $_marginLeft = '59.25pt';
66. /**
67. * Top margin (CSS style, i.e. XXpx or YYpt)
68. *
69. * @var string
70. */
71. private $_marginTop = '1.5pt';
73. /**
74. * Visible
75. *
76. * @var boolean
77. */
78. private $_visible = false;
80. /**
81. * Comment height (CSS style, i.e. XXpx or YYpt)
82. *
83. * @var string
84. */
85. private $_height = '55.5pt';
87. /**
88. * Comment fill color
89. *
90. * @var PHPExcel_Style_Color
91. */
92. private $_fillColor;
94. /**
95. * Alignment
96. *
97. * @var string
98. */
99. private $_alignment;
101. /**
102. * Create a new PHPExcel_Comment
103. *
104. * @throws Exception
105. */
106. public function __construct()
107. {
108. // Initialise variables
109. $this->_author = 'Author';
110. $this->_text = new PHPExcel_RichText();
111. $this->_fillColor = new PHPExcel_Style_Color('FFFFFFE1');
112. $this->_alignment = PHPExcel_Style_Alignment:: HORIZONTAL_GENERAL;
113. }
115. /**
116. * Get Author
117. *
118. * @return string
119. */
120. public function getAuthor() {
121. return $this->_author;
122. }
124. /**
125. * Set Author
126. *
127. * @param string $pValue
128. * @return PHPExcel_Comment
129. */
130. public function setAuthor($pValue = '') {
131. $this->_author = $pValue;
132. return $this;
133. }
135. /**
136. * Get Rich text comment
137. *
138. * @return PHPExcel_RichText
139. */
140. public function getText() {
141. return $this->_text;
142. }
144. /**
145. * Set Rich text comment
146. *
147. * @param PHPExcel_RichText $pValue
148. * @return PHPExcel_Comment
149. */
150. public function setText(PHPExcel_RichText $pValue) {
151. $this->_text = $pValue;
152. return $this;
153. }
155. /**
156. * Get comment width (CSS style, i.e. XXpx or YYpt)
157. *
158. * @return string
159. */
160. public function getWidth() {
161. return $this->_width;
162. }
164. /**
165. * Set comment width (CSS style, i.e. XXpx or YYpt)
166. *
167. * @param string $value
168. * @return PHPExcel_Comment
169. */
170. public function setWidth($value = '96pt') {
171. $this->_width = $value;
172. return $this;
173. }
175. /**
176. * Get comment height (CSS style, i.e. XXpx or YYpt)
177. *
178. * @return string
179. */
180. public function getHeight() {
181. return $this->_height;
182. }
184. /**
185. * Set comment height (CSS style, i.e. XXpx or YYpt)
186. *
187. * @param string $value
188. * @return PHPExcel_Comment
189. */
190. public function setHeight($value = '55.5pt') {
191. $this->_height = $value;
192. return $this;
193. }
195. /**
196. * Get left margin (CSS style, i.e. XXpx or YYpt)
197. *
198. * @return string
199. */
200. public function getMarginLeft() {
201. return $this->_marginLeft;
202. }
204. /**
205. * Set left margin (CSS style, i.e. XXpx or YYpt)
206. *
207. * @param string $value
208. * @return PHPExcel_Comment
209. */
210. public function setMarginLeft($value = '59.25pt') {
211. $this->_marginLeft = $value;
212. return $this;
213. }
215. /**
216. * Get top margin (CSS style, i.e. XXpx or YYpt)
217. *
218. * @return string
219. */
220. public function getMarginTop() {
221. return $this->_marginTop;
222. }
224. /**
225. * Set top margin (CSS style, i.e. XXpx or YYpt)
226. *
227. * @param string $value
228. * @return PHPExcel_Comment
229. */
230. public function setMarginTop($value = '1.5pt') {
231. $this->_marginTop = $value;
232. return $this;
233. }
235. /**
236. * Is the comment visible by default?
237. *
238. * @return boolean
239. */
240. public function getVisible() {
241. return $this->_visible;
242. }
244. /**
245. * Set comment default visibility
246. *
247. * @param boolean $value
248. * @return PHPExcel_Comment
249. */
250. public function setVisible($value = false) {
251. $this->_visible = $value;
252. return $this;
253. }
255. /**
256. * Get fill color
257. *
258. * @return PHPExcel_Style_Color
259. */
260. public function getFillColor() {
261. return $this->_fillColor;
262. }
264. /**
265. * Set Alignment
266. *
267. * @param string $pValue
268. * @return PHPExcel_Comment
269. */
270. public function setAlignment($pValue = PHPExcel_Style_Alignment:: HORIZONTAL_GENERAL) {
271. $this->_alignment = $pValue;
272. return $this;
273. }
275. /**
276. * Get Alignment
277. *
278. * @return string
279. */
280. public function getAlignment() {
281. return $this->_alignment;
282. }
284. /**
285. * Get hash code
286. *
287. * @return string Hash code
288. */
289. public function getHashCode() {
290. return md5(
291. $this->_author
292. . $this->_text->getHashCode()
293. . $this->_width
294. . $this->_height
295. . $this->_marginLeft
296. . $this->_marginTop
297. . ($this->_visible ? 1 : 0)
298. . $this->_fillColor->getHashCode()
299. . $this->_alignment
300. . __CLASS__
301. );
302. }
304. /**
305. * Implement PHP __clone to create a deep clone, not just a shallow copy.
306. */
307. public function __clone() {
308. $vars = get_object_vars($this);
309. foreach ($vars as $key => $value) {
310. if ( is_object($value)) {
311. $this->$key = clone $value;
312. } else {
313. $this->$key = $value;
314. }
315. }
316. }
317. }

Documentation generated on Sun, 27 Feb 2011 16:29:08 -0800 by phpDocumentor 1.4.3