Inheritance: extends AbstractBlock
コード例 #1
0
 public function testRender()
 {
     $class = $this->getRendererClass();
     $renderer = new $class();
     $list = new ListItem(new ListData());
     $paragraph = new Paragraph();
     $paragraph->appendChild(new Text('Item 1'));
     $list->appendChild($paragraph);
     $color = new Color();
     $color->setForceStyle(true);
     $cliRenderer = new CliRenderer([Paragraph::class => new ParagraphRenderer()], [Text::class => new TextRenderer()], $color);
     $this->assertEquals(" * Item 1\n", $renderer->render($list, $cliRenderer));
 }
コード例 #2
0
ファイル: Processor.php プロジェクト: rlugojr/daux.io
 /**
  * @param Entry[] $entries
  * @return ListBlock
  */
 protected function render(array $entries)
 {
     $data = new ListData();
     $data->type = ListBlock::TYPE_UNORDERED;
     $list = new ListBlock($data);
     $list->data['attributes']['class'] = 'TableOfContents';
     foreach ($entries as $entry) {
         $item = new ListItem($data);
         $a = new Link('#' . $entry->getId());
         $content = $entry->getContent();
         if ($content != null) {
             foreach ($this->cloneChildren($content) as $node) {
                 $a->appendChild($node);
             }
         }
         $p = new Paragraph();
         $p->appendChild($a);
         $item->appendChild($p);
         if (!empty($entry->getChildren())) {
             $item->appendChild($this->render($entry->getChildren()));
         }
         $list->appendChild($item);
     }
     return $list;
 }