Rev 2388 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php/*** PHPExcel** Copyright (c) 2006 - 2013 PHPExcel** This library is free software; you can redistribute it and/or* modify it under the terms of the GNU Lesser General Public* License as published by the Free Software Foundation; either* version 2.1 of the License, or (at your option) any later version.** This library is distributed in the hope that it will be useful,* but WITHOUT ANY WARRANTY; without even the implied warranty of* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU* Lesser General Public License for more details.** You should have received a copy of the GNU Lesser General Public* License along with this library; if not, write to the Free Software* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA** @category PHPExcel* @package PHPExcel_Worksheet_Drawing* @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel)* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL* @version ##VERSION##, ##DATE##*//*** PHPExcel_Worksheet_Drawing_Shadow** @category PHPExcel* @package PHPExcel_Worksheet_Drawing* @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel)*/class PHPExcel_Worksheet_Drawing_Shadow implements PHPExcel_IComparable{/* Shadow alignment */const SHADOW_BOTTOM = 'b';const SHADOW_BOTTOM_LEFT = 'bl';const SHADOW_BOTTOM_RIGHT = 'br';const SHADOW_CENTER = 'ctr';const SHADOW_LEFT = 'l';const SHADOW_TOP = 't';const SHADOW_TOP_LEFT = 'tl';const SHADOW_TOP_RIGHT = 'tr';/*** Visible** @var boolean*/private $_visible;/*** Blur radius** Defaults to 6** @var int*/private $_blurRadius;/*** Shadow distance** Defaults to 2** @var int*/private $_distance;/*** Shadow direction (in degrees)** @var int*/private $_direction;/*** Shadow alignment** @var int*/private $_alignment;/*** Color** @var PHPExcel_Style_Color*/private $_color;/*** Alpha** @var int*/private $_alpha;/*** Create a new PHPExcel_Worksheet_Drawing_Shadow*/public function __construct(){// Initialise values$this->_visible = false;$this->_blurRadius = 6;$this->_distance = 2;$this->_direction = 0;$this->_alignment = PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT;$this->_color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK);$this->_alpha = 50;}/*** Get Visible** @return boolean*/public function getVisible() {return $this->_visible;}/*** Set Visible** @param boolean $pValue* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setVisible($pValue = false) {$this->_visible = $pValue;return $this;}/*** Get Blur radius** @return int*/public function getBlurRadius() {return $this->_blurRadius;}/*** Set Blur radius** @param int $pValue* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setBlurRadius($pValue = 6) {$this->_blurRadius = $pValue;return $this;}/*** Get Shadow distance** @return int*/public function getDistance() {return $this->_distance;}/*** Set Shadow distance** @param int $pValue* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setDistance($pValue = 2) {$this->_distance = $pValue;return $this;}/*** Get Shadow direction (in degrees)** @return int*/public function getDirection() {return $this->_direction;}/*** Set Shadow direction (in degrees)** @param int $pValue* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setDirection($pValue = 0) {$this->_direction = $pValue;return $this;}/*** Get Shadow alignment** @return int*/public function getAlignment() {return $this->_alignment;}/*** Set Shadow alignment** @param int $pValue* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setAlignment($pValue = 0) {$this->_alignment = $pValue;return $this;}/*** Get Color** @return PHPExcel_Style_Color*/public function getColor() {return $this->_color;}/*** Set Color** @param PHPExcel_Style_Color $pValue* @throws PHPExcel_Exception* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setColor(PHPExcel_Style_Color $pValue = null) {$this->_color = $pValue;return $this;}/*** Get Alpha** @return int*/public function getAlpha() {return $this->_alpha;}/*** Set Alpha** @param int $pValue* @return PHPExcel_Worksheet_Drawing_Shadow*/public function setAlpha($pValue = 0) {$this->_alpha = $pValue;return $this;}/*** Get hash code** @return string Hash code*/public function getHashCode() {return md5(($this->_visible ? 't' : 'f'). $this->_blurRadius. $this->_distance. $this->_direction. $this->_alignment. $this->_color->getHashCode(). $this->_alpha. __CLASS__);}/*** Implement PHP __clone to create a deep clone, not just a shallow copy.*/public function __clone() {$vars = get_object_vars($this);foreach ($vars as $key => $value) {if (is_object($value)) {$this->$key = clone $value;} else {$this->$key = $value;}}}}