1: <?php
2: /**
3: * PHPExcel
4: *
5: * This library is free software; you can redistribute it and/or
6: * modify it under the terms of the GNU Lesser General Public
7: * License as published by the Free Software Foundation; either
8: * version 2.1 of the License, or (at your option) any later version.
9: *
10: * This library is distributed in the hope that it will be useful,
11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13: * Lesser General Public License for more details.
14: *
15: * You should have received a copy of the GNU Lesser General Public
16: * License along with this library; if not, write to the Free Software
17: * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18: *
19: * @category PHPExcel
20: * @package PHPExcel_RichText
21: * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)
22: * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
23: * @version 1.8.0, 2014-03-02
24: */
25:
26:
27: /**
28: * PHPExcel_RichText_TextElement
29: *
30: * @category PHPExcel
31: * @package PHPExcel_RichText
32: * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)
33: */
34: class PHPExcel_RichText_TextElement implements PHPExcel_RichText_ITextElement
35: {
36: /**
37: * Text
38: *
39: * @var string
40: */
41: private $_text;
42:
43: /**
44: * Create a new PHPExcel_RichText_TextElement instance
45: *
46: * @param string $pText Text
47: */
48: public function __construct($pText = '')
49: {
50: // Initialise variables
51: $this->_text = $pText;
52: }
53:
54: /**
55: * Get text
56: *
57: * @return string Text
58: */
59: public function getText() {
60: return $this->_text;
61: }
62:
63: /**
64: * Set text
65: *
66: * @param $pText string Text
67: * @return PHPExcel_RichText_ITextElement
68: */
69: public function setText($pText = '') {
70: $this->_text = $pText;
71: return $this;
72: }
73:
74: /**
75: * Get font
76: *
77: * @return PHPExcel_Style_Font
78: */
79: public function getFont() {
80: return null;
81: }
82:
83: /**
84: * Get hash code
85: *
86: * @return string Hash code
87: */
88: public function getHashCode() {
89: return md5(
90: $this->_text
91: . __CLASS__
92: );
93: }
94:
95: /**
96: * Implement PHP __clone to create a deep clone, not just a shallow copy.
97: */
98: public function __clone() {
99: $vars = get_object_vars($this);
100: foreach ($vars as $key => $value) {
101: if (is_object($value)) {
102: $this->$key = clone $value;
103: } else {
104: $this->$key = $value;
105: }
106: }
107: }
108: }
109: