PHPExcel_Worksheet_Drawing
[ class tree: PHPExcel_Worksheet_Drawing ] [ index: PHPExcel_Worksheet_Drawing ] [ all elements ]

Source for file Shadow.php

Documentation is available at Shadow.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_Worksheet_Drawing
  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.  */
  27.  
  28.  
  29. /**
  30.  * PHPExcel_Worksheet_Drawing_Shadow
  31.  *
  32.  * @category   PHPExcel
  33.  * @package    PHPExcel_Worksheet_Drawing
  34.  * @copyright  Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
  35.  */
  36. class PHPExcel_Worksheet_Drawing_Shadow implements PHPExcel_IComparable
  37. {
  38.     /* Shadow alignment */
  39.     const SHADOW_BOTTOM                            'b';
  40.     const SHADOW_BOTTOM_LEFT                    'bl';
  41.     const SHADOW_BOTTOM_RIGHT                    'br';
  42.     const SHADOW_CENTER                            'ctr';
  43.     const SHADOW_LEFT                            'l';
  44.     const SHADOW_TOP                            't';
  45.     const SHADOW_TOP_LEFT                        'tl';
  46.     const SHADOW_TOP_RIGHT                        'tr';
  47.  
  48.     /**
  49.      * Visible
  50.      *
  51.      * @var boolean 
  52.      */
  53.     private $_visible;
  54.  
  55.     /**
  56.      * Blur radius
  57.      *
  58.      * Defaults to 6
  59.      *
  60.      * @var int 
  61.      */
  62.     private $_blurRadius;
  63.  
  64.     /**
  65.      * Shadow distance
  66.      *
  67.      * Defaults to 2
  68.      *
  69.      * @var int 
  70.      */
  71.     private $_distance;
  72.  
  73.     /**
  74.      * Shadow direction (in degrees)
  75.      *
  76.      * @var int 
  77.      */
  78.     private $_direction;
  79.  
  80.     /**
  81.      * Shadow alignment
  82.      *
  83.      * @var int 
  84.      */
  85.     private $_alignment;
  86.  
  87.     /**
  88.      * Color
  89.      *
  90.      * @var PHPExcel_Style_Color 
  91.      */
  92.     private $_color;
  93.  
  94.     /**
  95.      * Alpha
  96.      *
  97.      * @var int 
  98.      */
  99.     private $_alpha;
  100.  
  101.     /**
  102.      * Create a new PHPExcel_Worksheet_Drawing_Shadow
  103.      */
  104.     public function __construct()
  105.     {
  106.         // Initialise values
  107.         $this->_visible                false;
  108.         $this->_blurRadius            6;
  109.         $this->_distance            2;
  110.         $this->_direction            0;
  111.         $this->_alignment            PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT;
  112.         $this->_color                new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK);
  113.         $this->_alpha                50;
  114.     }
  115.  
  116.     /**
  117.      * Get Visible
  118.      *
  119.      * @return boolean 
  120.      */
  121.     public function getVisible({
  122.         return $this->_visible;
  123.     }
  124.  
  125.     /**
  126.      * Set Visible
  127.      *
  128.      * @param boolean $pValue 
  129.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  130.      */
  131.     public function setVisible($pValue false{
  132.         $this->_visible $pValue;
  133.         return $this;
  134.     }
  135.  
  136.     /**
  137.      * Get Blur radius
  138.      *
  139.      * @return int 
  140.      */
  141.     public function getBlurRadius({
  142.         return $this->_blurRadius;
  143.     }
  144.  
  145.     /**
  146.      * Set Blur radius
  147.      *
  148.      * @param int $pValue 
  149.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  150.      */
  151.     public function setBlurRadius($pValue 6{
  152.         $this->_blurRadius $pValue;
  153.         return $this;
  154.     }
  155.  
  156.     /**
  157.      * Get Shadow distance
  158.      *
  159.      * @return int 
  160.      */
  161.     public function getDistance({
  162.         return $this->_distance;
  163.     }
  164.  
  165.     /**
  166.      * Set Shadow distance
  167.      *
  168.      * @param int $pValue 
  169.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  170.      */
  171.     public function setDistance($pValue 2{
  172.         $this->_distance $pValue;
  173.         return $this;
  174.     }
  175.  
  176.     /**
  177.      * Get Shadow direction (in degrees)
  178.      *
  179.      * @return int 
  180.      */
  181.     public function getDirection({
  182.         return $this->_direction;
  183.     }
  184.  
  185.     /**
  186.      * Set Shadow direction (in degrees)
  187.      *
  188.      * @param int $pValue 
  189.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  190.      */
  191.     public function setDirection($pValue 0{
  192.         $this->_direction $pValue;
  193.         return $this;
  194.     }
  195.  
  196.    /**
  197.      * Get Shadow alignment
  198.      *
  199.      * @return int 
  200.      */
  201.     public function getAlignment({
  202.         return $this->_alignment;
  203.     }
  204.  
  205.     /**
  206.      * Set Shadow alignment
  207.      *
  208.      * @param int $pValue 
  209.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  210.      */
  211.     public function setAlignment($pValue 0{
  212.         $this->_alignment $pValue;
  213.         return $this;
  214.     }
  215.  
  216.    /**
  217.      * Get Color
  218.      *
  219.      * @return PHPExcel_Style_Color 
  220.      */
  221.     public function getColor({
  222.         return $this->_color;
  223.     }
  224.  
  225.     /**
  226.      * Set Color
  227.      *
  228.      * @param     PHPExcel_Style_Color $pValue 
  229.      * @throws     Exception
  230.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  231.      */
  232.     public function setColor(PHPExcel_Style_Color $pValue null{
  233.            $this->_color $pValue;
  234.            return $this;
  235.     }
  236.  
  237.    /**
  238.      * Get Alpha
  239.      *
  240.      * @return int 
  241.      */
  242.     public function getAlpha({
  243.         return $this->_alpha;
  244.     }
  245.  
  246.     /**
  247.      * Set Alpha
  248.      *
  249.      * @param int $pValue 
  250.      * @return PHPExcel_Worksheet_Drawing_Shadow 
  251.      */
  252.     public function setAlpha($pValue 0{
  253.         $this->_alpha $pValue;
  254.         return $this;
  255.     }
  256.  
  257.     /**
  258.      * Get hash code
  259.      *
  260.      * @return string    Hash code
  261.      */
  262.     public function getHashCode({
  263.         return md5(
  264.               ($this->_visible 't' 'f')
  265.             . $this->_blurRadius
  266.             . $this->_distance
  267.             . $this->_direction
  268.             . $this->_alignment
  269.             . $this->_color->getHashCode()
  270.             . $this->_alpha
  271.             . __CLASS__
  272.         );
  273.     }
  274.  
  275.     /**
  276.      * Implement PHP __clone to create a deep clone, not just a shallow copy.
  277.      */
  278.     public function __clone({
  279.         $vars get_object_vars($this);
  280.         foreach ($vars as $key => $value{
  281.             if (is_object($value)) {
  282.                 $this->$key clone $value;
  283.             else {
  284.                 $this->$key $value;
  285.             }
  286.         }
  287.     }
  288. }

Documentation generated on Sun, 27 Feb 2011 16:33:51 -0800 by phpDocumentor 1.4.3