caption = $caption; $this->layout = $layout; $this->setOverlay($overlay); } /** * Get caption. * * @return array|RichText|string */ public function getCaption() { return $this->caption; } public function getCaptionText(): string { $caption = $this->caption; if (is_string($caption)) { return $caption; } if ($caption instanceof RichText) { return $caption->getPlainText(); } $retVal = ''; foreach ($caption as $textx) { /** @var RichText|string */ $text = $textx; if ($text instanceof RichText) { $retVal .= $text->getPlainText(); } else { $retVal .= $text; } } return $retVal; } /** * Set caption. * * @param array|RichText|string $caption * * @return $this */ public function setCaption($caption) { $this->caption = $caption; return $this; } /** * Get allow overlay of other elements? * * @return bool */ public function getOverlay() { return $this->overlay; } /** * Set allow overlay of other elements? * * @param bool $overlay */ public function setOverlay($overlay): void { $this->overlay = $overlay; } public function getLayout(): ?Layout { return $this->layout; } }