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

Source for file Conditional.php

Documentation is available at Conditional.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_Style
  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_Style_Conditional
  31.  *
  32.  * @category   PHPExcel
  33.  * @package    PHPExcel_Style
  34.  * @copyright  Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
  35.  */
  36. class PHPExcel_Style_Conditional implements PHPExcel_IComparable
  37. {
  38.     /* Condition types */
  39.     const CONDITION_NONE                    'none';
  40.     const CONDITION_CELLIS                    'cellIs';
  41.     const CONDITION_CONTAINSTEXT            'containsText';
  42.     const CONDITION_EXPRESSION                 'expression';
  43.  
  44.     /* Operator types */
  45.     const OPERATOR_NONE                        '';
  46.     const OPERATOR_BEGINSWITH                'beginsWith';
  47.     const OPERATOR_ENDSWITH                    'endsWith';
  48.     const OPERATOR_EQUAL                    'equal';
  49.     const OPERATOR_GREATERTHAN                'greaterThan';
  50.     const OPERATOR_GREATERTHANOREQUAL        'greaterThanOrEqual';
  51.     const OPERATOR_LESSTHAN                    'lessThan';
  52.     const OPERATOR_LESSTHANOREQUAL            'lessThanOrEqual';
  53.     const OPERATOR_NOTEQUAL                    'notEqual';
  54.     const OPERATOR_CONTAINSTEXT                'containsText';
  55.     const OPERATOR_NOTCONTAINS                'notContains';
  56.     const OPERATOR_BETWEEN                    'between';
  57.  
  58.     /**
  59.      * Condition type
  60.      *
  61.      * @var int 
  62.      */
  63.     private $_conditionType;
  64.  
  65.     /**
  66.      * Operator type
  67.      *
  68.      * @var int 
  69.      */
  70.     private $_operatorType;
  71.  
  72.     /**
  73.      * Text
  74.      *
  75.      * @var string 
  76.      */
  77.     private $_text;
  78.  
  79.     /**
  80.      * Condition
  81.      *
  82.      * @var string[] 
  83.      */
  84.     private $_condition array();
  85.  
  86.     /**
  87.      * Style
  88.      *
  89.      * @var PHPExcel_Style 
  90.      */
  91.     private $_style;
  92.  
  93.     /**
  94.      * Create a new PHPExcel_Style_Conditional
  95.      */
  96.     public function __construct()
  97.     {
  98.         // Initialise values
  99.         $this->_conditionType        PHPExcel_Style_Conditional::CONDITION_NONE;
  100.         $this->_operatorType        PHPExcel_Style_Conditional::OPERATOR_NONE;
  101.         $this->_text                null;
  102.         $this->_condition            array();
  103.         $this->_style                new PHPExcel_Style();
  104.     }
  105.  
  106.     /**
  107.      * Get Condition type
  108.      *
  109.      * @return string 
  110.      */
  111.     public function getConditionType({
  112.         return $this->_conditionType;
  113.     }
  114.  
  115.     /**
  116.      * Set Condition type
  117.      *
  118.      * @param string $pValue    PHPExcel_Style_Conditional condition type
  119.      * @return PHPExcel_Style_Conditional 
  120.      */
  121.     public function setConditionType($pValue PHPExcel_Style_Conditional::CONDITION_NONE{
  122.         $this->_conditionType $pValue;
  123.         return $this;
  124.     }
  125.  
  126.     /**
  127.      * Get Operator type
  128.      *
  129.      * @return string 
  130.      */
  131.     public function getOperatorType({
  132.         return $this->_operatorType;
  133.     }
  134.  
  135.     /**
  136.      * Set Operator type
  137.      *
  138.      * @param string $pValue    PHPExcel_Style_Conditional operator type
  139.      * @return PHPExcel_Style_Conditional 
  140.      */
  141.     public function setOperatorType($pValue PHPExcel_Style_Conditional::OPERATOR_NONE{
  142.         $this->_operatorType $pValue;
  143.         return $this;
  144.     }
  145.  
  146.     /**
  147.      * Get text
  148.      *
  149.      * @return string 
  150.      */
  151.     public function getText({
  152.         return $this->_text;
  153.     }
  154.  
  155.     /**
  156.      * Set text
  157.      *
  158.      * @param string $value 
  159.      * @return PHPExcel_Style_Conditional 
  160.      */
  161.     public function setText($value null{
  162.            $this->_text $value;
  163.            return $this;
  164.     }
  165.  
  166.     /**
  167.      * Get Condition
  168.      *
  169.      * @deprecated Deprecated, use getConditions instead
  170.      * @return string 
  171.      */
  172.     public function getCondition({
  173.         if (isset($this->_condition[0])) {
  174.             return $this->_condition[0];
  175.         }
  176.  
  177.         return '';
  178.     }
  179.  
  180.     /**
  181.      * Set Condition
  182.      *
  183.      * @deprecated Deprecated, use setConditions instead
  184.      * @param string $pValue    Condition
  185.      * @return PHPExcel_Style_Conditional 
  186.      */
  187.     public function setCondition($pValue ''{
  188.         if (!is_array($pValue))
  189.             $pValue array($pValue);
  190.  
  191.         return $this->setConditions($pValue);
  192.     }
  193.  
  194.     /**
  195.      * Get Conditions
  196.      *
  197.      * @return string[] 
  198.      */
  199.     public function getConditions({
  200.         return $this->_condition;
  201.     }
  202.  
  203.     /**
  204.      * Set Conditions
  205.      *
  206.      * @param string[] $pValue    Condition
  207.      * @return PHPExcel_Style_Conditional 
  208.      */
  209.     public function setConditions($pValue{
  210.         if (!is_array($pValue))
  211.             $pValue array($pValue);
  212.  
  213.         $this->_condition $pValue;
  214.         return $this;
  215.     }
  216.  
  217.     /**
  218.      * Add Condition
  219.      *
  220.      * @param string $pValue    Condition
  221.      * @return PHPExcel_Style_Conditional 
  222.      */
  223.     public function addCondition($pValue ''{
  224.         $this->_condition[$pValue;
  225.         return $this;
  226.     }
  227.  
  228.     /**
  229.      * Get Style
  230.      *
  231.      * @return PHPExcel_Style 
  232.      */
  233.     public function getStyle({
  234.         return $this->_style;
  235.     }
  236.  
  237.     /**
  238.      * Set Style
  239.      *
  240.      * @param     PHPExcel_Style $pValue 
  241.      * @throws     Exception
  242.      * @return PHPExcel_Style_Conditional 
  243.      */
  244.     public function setStyle(PHPExcel_Style $pValue null{
  245.            $this->_style $pValue;
  246.            return $this;
  247.     }
  248.  
  249.     /**
  250.      * Get hash code
  251.      *
  252.      * @return string    Hash code
  253.      */
  254.     public function getHashCode({
  255.         return md5(
  256.               $this->_conditionType
  257.             . $this->_operatorType
  258.             . implode(';'$this->_condition)
  259.             . $this->_style->getHashCode()
  260.             . __CLASS__
  261.         );
  262.     }
  263.  
  264.     /**
  265.      * Implement PHP __clone to create a deep clone, not just a shallow copy.
  266.      */
  267.     public function __clone({
  268.         $vars get_object_vars($this);
  269.         foreach ($vars as $key => $value{
  270.             if (is_object($value)) {
  271.                 $this->$key clone $value;
  272.             else {
  273.                 $this->$key $value;
  274.             }
  275.         }
  276.     }
  277. }

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