$generator
$generator
For HTML generation convenience funcs.
element(string $tag, string $contents, array $attr = array(), bool $escape = true) : string
Prints a complete element with content inside
| string | $tag | Tag name  | 
                            
| string | $contents | Element contents  | 
                            
| array | $attr | Tag attributes  | 
                            
| bool | $escape | whether or not to escape contents  | 
                            
<?php
class HTMLPurifier_Printer_CSSDefinition extends HTMLPurifier_Printer
{
    /**
     * @type HTMLPurifier_CSSDefinition
     */
    protected $def;
    /**
     * @param HTMLPurifier_Config $config
     * @return string
     */
    public function render($config)
    {
        $this->def = $config->getCSSDefinition();
        $ret = '';
        $ret .= $this->start('div', array('class' => 'HTMLPurifier_Printer'));
        $ret .= $this->start('table');
        $ret .= $this->element('caption', 'Properties ($info)');
        $ret .= $this->start('thead');
        $ret .= $this->start('tr');
        $ret .= $this->element('th', 'Property', array('class' => 'heavy'));
        $ret .= $this->element('th', 'Definition', array('class' => 'heavy', 'style' => 'width:auto;'));
        $ret .= $this->end('tr');
        $ret .= $this->end('thead');
        ksort($this->def->info);
        foreach ($this->def->info as $property => $obj) {
            $name = $this->getClass($obj, 'AttrDef_');
            $ret .= $this->row($property, $name);
        }
        $ret .= $this->end('table');
        $ret .= $this->end('div');
        return $ret;
    }
}
// vim: et sw=4 sts=4