/** * Accept visitor. * * @param IdmlVisitor $visitor */ public function accept(IdmlVisitor $visitor, $depth = 0) { // The idmlStory will be null for text frames that contain a story that was already placed in another text frame. // Do not process those text frames. if ($this->story && $this->visible) { if ($this->isEmbedded()) { $visitor->visitEmbeddedTextFrame($this, $depth); } else { $visitor->visitTextFrame($this, $depth); $this->story->accept($visitor, $depth + 1); $visitor->visitTextFrameEnd($this, $depth); } } }