123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- <?php
- /**
- * Created by PhpStorm.
- * User: phperstar
- * Date: 2020/8/11
- * Time: 6:08 PM
- */
- abstract class Supervisor
- {
- /**
- * Supervisor?
- *
- * @var boolean
- */
- protected $isSupervisor;
- /**
- * Parent. Only used for supervisor
- *
- * @var PHPExcel_Style
- */
- protected $parent;
- /**
- * Create a new PHPExcel_Style_Alignment
- *
- * @param boolean $isSupervisor Flag indicating if this is a supervisor or not
- * Leave this value at default unless you understand exactly what
- * its ramifications are
- */
- public function __construct($isSupervisor = false)
- {
- // Supervisor?
- $this->isSupervisor = $isSupervisor;
- }
- /**
- * Bind parent. Only used for supervisor
- *
- * @param PHPExcel $parent
- * @return PHPExcel_Style_Supervisor
- */
- public function bindParent($parent, $parentPropertyName = null)
- {
- $this->parent = $parent;
- return $this;
- }
- /**
- * Is this a supervisor or a cell style component?
- *
- * @return boolean
- */
- public function getIsSupervisor()
- {
- return $this->isSupervisor;
- }
- /**
- * Get the currently active sheet. Only used for supervisor
- *
- * @return PHPExcel_Worksheet
- */
- public function getActiveSheet()
- {
- return $this->parent->getActiveSheet();
- }
- /**
- * Get the currently active cell coordinate in currently active sheet.
- * Only used for supervisor
- *
- * @return string E.g. 'A1'
- */
- public function getSelectedCells()
- {
- return $this->getActiveSheet()->getSelectedCells();
- }
- /**
- * Get the currently active cell coordinate in currently active sheet.
- * Only used for supervisor
- *
- * @return string E.g. 'A1'
- */
- public function getActiveCell()
- {
- return $this->getActiveSheet()->getActiveCell();
- }
- /**
- * 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)) && ($key != 'parent')) {
- $this->$key = clone $value;
- } else {
- $this->$key = $value;
- }
- }
- }
- }
|