summaryrefslogtreecommitdiffstats
path: root/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php329
1 files changed, 329 insertions, 0 deletions
diff --git a/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php b/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php
new file mode 100644
index 0000000..b068681
--- /dev/null
+++ b/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php
@@ -0,0 +1,329 @@
+<?php
+
+namespace PhpOffice\PhpSpreadsheet;
+
+use PhpOffice\PhpSpreadsheet\RichText\RichText;
+
+class Comment implements IComparable
+{
+ /**
+ * Author.
+ *
+ * @var string
+ */
+ private $author;
+
+ /**
+ * Rich text comment.
+ *
+ * @var RichText
+ */
+ private $text;
+
+ /**
+ * Comment width (CSS style, i.e. XXpx or YYpt).
+ *
+ * @var string
+ */
+ private $width = '96pt';
+
+ /**
+ * Left margin (CSS style, i.e. XXpx or YYpt).
+ *
+ * @var string
+ */
+ private $marginLeft = '59.25pt';
+
+ /**
+ * Top margin (CSS style, i.e. XXpx or YYpt).
+ *
+ * @var string
+ */
+ private $marginTop = '1.5pt';
+
+ /**
+ * Visible.
+ *
+ * @var bool
+ */
+ private $visible = false;
+
+ /**
+ * Comment height (CSS style, i.e. XXpx or YYpt).
+ *
+ * @var string
+ */
+ private $height = '55.5pt';
+
+ /**
+ * Comment fill color.
+ *
+ * @var Style\Color
+ */
+ private $fillColor;
+
+ /**
+ * Alignment.
+ *
+ * @var string
+ */
+ private $alignment;
+
+ /**
+ * Create a new Comment.
+ */
+ public function __construct()
+ {
+ // Initialise variables
+ $this->author = 'Author';
+ $this->text = new RichText();
+ $this->fillColor = new Style\Color('FFFFFFE1');
+ $this->alignment = Style\Alignment::HORIZONTAL_GENERAL;
+ }
+
+ /**
+ * Get Author.
+ *
+ * @return string
+ */
+ public function getAuthor()
+ {
+ return $this->author;
+ }
+
+ /**
+ * Set Author.
+ *
+ * @param string $author
+ *
+ * @return $this
+ */
+ public function setAuthor($author)
+ {
+ $this->author = $author;
+
+ return $this;
+ }
+
+ /**
+ * Get Rich text comment.
+ *
+ * @return RichText
+ */
+ public function getText()
+ {
+ return $this->text;
+ }
+
+ /**
+ * Set Rich text comment.
+ *
+ * @return $this
+ */
+ public function setText(RichText $pValue)
+ {
+ $this->text = $pValue;
+
+ return $this;
+ }
+
+ /**
+ * Get comment width (CSS style, i.e. XXpx or YYpt).
+ *
+ * @return string
+ */
+ public function getWidth()
+ {
+ return $this->width;
+ }
+
+ /**
+ * Set comment width (CSS style, i.e. XXpx or YYpt).
+ *
+ * @param string $width
+ *
+ * @return $this
+ */
+ public function setWidth($width)
+ {
+ $this->width = $width;
+
+ return $this;
+ }
+
+ /**
+ * Get comment height (CSS style, i.e. XXpx or YYpt).
+ *
+ * @return string
+ */
+ public function getHeight()
+ {
+ return $this->height;
+ }
+
+ /**
+ * Set comment height (CSS style, i.e. XXpx or YYpt).
+ *
+ * @param string $value
+ *
+ * @return $this
+ */
+ public function setHeight($value)
+ {
+ $this->height = $value;
+
+ return $this;
+ }
+
+ /**
+ * Get left margin (CSS style, i.e. XXpx or YYpt).
+ *
+ * @return string
+ */
+ public function getMarginLeft()
+ {
+ return $this->marginLeft;
+ }
+
+ /**
+ * Set left margin (CSS style, i.e. XXpx or YYpt).
+ *
+ * @param string $value
+ *
+ * @return $this
+ */
+ public function setMarginLeft($value)
+ {
+ $this->marginLeft = $value;
+
+ return $this;
+ }
+
+ /**
+ * Get top margin (CSS style, i.e. XXpx or YYpt).
+ *
+ * @return string
+ */
+ public function getMarginTop()
+ {
+ return $this->marginTop;
+ }
+
+ /**
+ * Set top margin (CSS style, i.e. XXpx or YYpt).
+ *
+ * @param string $value
+ *
+ * @return $this
+ */
+ public function setMarginTop($value)
+ {
+ $this->marginTop = $value;
+
+ return $this;
+ }
+
+ /**
+ * Is the comment visible by default?
+ *
+ * @return bool
+ */
+ public function getVisible()
+ {
+ return $this->visible;
+ }
+
+ /**
+ * Set comment default visibility.
+ *
+ * @param bool $value
+ *
+ * @return $this
+ */
+ public function setVisible($value)
+ {
+ $this->visible = $value;
+
+ return $this;
+ }
+
+ /**
+ * Get fill color.
+ *
+ * @return Style\Color
+ */
+ public function getFillColor()
+ {
+ return $this->fillColor;
+ }
+
+ /**
+ * Set Alignment.
+ *
+ * @param string $alignment see Style\Alignment::HORIZONTAL_*
+ *
+ * @return $this
+ */
+ public function setAlignment($alignment)
+ {
+ $this->alignment = $alignment;
+
+ return $this;
+ }
+
+ /**
+ * Get Alignment.
+ *
+ * @return string
+ */
+ public function getAlignment()
+ {
+ return $this->alignment;
+ }
+
+ /**
+ * Get hash code.
+ *
+ * @return string Hash code
+ */
+ public function getHashCode()
+ {
+ return md5(
+ $this->author .
+ $this->text->getHashCode() .
+ $this->width .
+ $this->height .
+ $this->marginLeft .
+ $this->marginTop .
+ ($this->visible ? 1 : 0) .
+ $this->fillColor->getHashCode() .
+ $this->alignment .
+ __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;
+ }
+ }
+ }
+
+ /**
+ * Convert to string.
+ *
+ * @return string
+ */
+ public function __toString()
+ {
+ return $this->text->getPlainText();
+ }
+}