From 903ae8a581fac1e6917fc3e31d2ad8fb91df80c3 Mon Sep 17 00:00:00 2001 From: ctrlaltca <> Date: Thu, 12 Jul 2012 11:21:01 +0000 Subject: standardize the use of unix eol; use svn properties to enforce native eol --- .../Text/Highlighter/Renderer/BB.php | 474 ++++++++++----------- 1 file changed, 237 insertions(+), 237 deletions(-) (limited to 'framework/3rdParty/TextHighlighter/Text/Highlighter/Renderer/BB.php') diff --git a/framework/3rdParty/TextHighlighter/Text/Highlighter/Renderer/BB.php b/framework/3rdParty/TextHighlighter/Text/Highlighter/Renderer/BB.php index 84bc67c0..3536260b 100644 --- a/framework/3rdParty/TextHighlighter/Text/Highlighter/Renderer/BB.php +++ b/framework/3rdParty/TextHighlighter/Text/Highlighter/Renderer/BB.php @@ -1,238 +1,238 @@ - - * @copyright 2005 Stoyan Stefanov - * @license http://www.php.net/license/3_0.txt PHP License - * @version CVS: $Id: BB.php,v 1.1 2007/06/03 02:37:08 ssttoo Exp $ - * @link http://pear.php.net/package/Text_Highlighter - */ - -/** - * @ignore - */ - -require_once dirname(__FILE__).'/../Renderer.php'; - -/** - * BB code renderer, based on Andrey Demenev's HTML renderer. - * - * Elements of $options argument of constructor (each being optional): - * - * - 'numbers' - Line numbering TRUE or FALSE - * - 'tabsize' - Tab size, default is 4 - * - 'bb_tags' - An array containing three BB tags, see below - * - 'tag_brackets' - An array that conains opening and closing tags, [ and ] - * - 'colors' - An array with all the colors to be used for highlighting - * - * The default BB tags are: - * - 'color' => 'color' - * - 'list' => 'list' - * - 'list_item' => '*' - * - * The default colors for the highlighter are: - * - 'default' => 'Black', - * - 'code' => 'Gray', - * - 'brackets' => 'Olive', - * - 'comment' => 'Orange', - * - 'mlcomment' => 'Orange', - * - 'quotes' => 'Darkred', - * - 'string' => 'Red', - * - 'identifier' => 'Blue', - * - 'builtin' => 'Teal', - * - 'reserved' => 'Green', - * - 'inlinedoc' => 'Blue', - * - 'var' => 'Darkblue', - * - 'url' => 'Blue', - * - 'special' => 'Navy', - * - 'number' => 'Maroon', - * - 'inlinetags' => 'Blue', - * - * - * @author Stoyan Stefanov - * @category Text - * @package Text_Highlighter - * @copyright 20045 Stoyan Stefanov - * @license http://www.php.net/license/3_0.txt PHP License - * @version Release: 0.5.0 - * @link http://pear.php.net/package/Text_Highlighter - */ - -class Text_Highlighter_Renderer_BB extends Text_Highlighter_Renderer_Array -{ - - /**#@+ - * @access private - */ - - /** - * Line numbering - will use the specified BB tag for listings - * - * @var boolean - */ - var $_numbers = false; - - /** - * BB tags to be used - * - * @var array - */ - var $_bb_tags = array ( - 'color' => 'color', - 'list' => 'list', - 'list_item' => '*', - 'code' => 'code', - ); - - /** - * BB brackets - [ and ] - * - * @var array - */ - var $_tag_brackets = array ('start' => '[', 'end' => ']'); - - /** - * Colors map - * - * @var boolean - */ - var $_colors = array( - 'default' => 'Black', - 'code' => 'Gray', - 'brackets' => 'Olive', - 'comment' => 'Orange', - 'mlcomment' => 'Orange', - 'quotes' => 'Darkred', - 'string' => 'Red', - 'identifier' => 'Blue', - 'builtin' => 'Teal', - 'reserved' => 'Green', - 'inlinedoc' => 'Blue', - 'var' => 'Darkblue', - 'url' => 'Blue', - 'special' => 'Navy', - 'number' => 'Maroon', - 'inlinetags' => 'Blue', - ); - - /**#@-*/ - - /** - * Resets renderer state - * - * @access protected - * - * - * Descendents of Text_Highlighter call this method from the constructor, - * passing $options they get as parameter. - */ - function reset() - { - parent::reset(); - if (isset($this->_options['numbers'])) { - $this->_numbers = $this->_options['numbers']; - } - if (isset($this->_options['bb_tags'])) { - $this->_bb_tags = array_merge($this->_bb_tags, $this->_options['bb_tags']); - } - if (isset($this->_options['tag_brackets'])) { - $this->_tag_brackets = array_merge($this->_tag_brackets, $this->_options['tag_brackets']); - } - if (isset($this->_options['colors'])) { - $this->_colors = array_merge($this->_colors, $this->_options['colors']); - } - } - - - /** - * Signals that no more tokens are available - * - * @abstract - * @access public - * - */ - function finalize() - { - - // get parent's output - parent::finalize(); - $output = parent::getOutput(); - - $bb_output = ''; - - $color_start = $this->_tag_brackets['start'] . $this->_bb_tags['color'] . '=%s' . $this->_tag_brackets['end']; - $color_end = $this->_tag_brackets['start'] . '/' . $this->_bb_tags['color'] . $this->_tag_brackets['end']; - - // loop through each class=>content pair - foreach ($output AS $token) { - - if ($this->_enumerated) { - $class = $token[0]; - $content = $token[1]; - } else { - $key = key($token); - $class = $key; - $content = $token[$key]; - } - - $iswhitespace = ctype_space($content); - if (!$iswhitespace && !empty($this->_colors[$class])) { - $bb_output .= sprintf($color_start, $this->_colors[$class]); - $bb_output .= $content; - $bb_output .= $color_end; - } else { - $bb_output .= $content; - } - } - - if ($this->_numbers) { - - $item_tag = $this->_tag_brackets['start'] . - $this->_bb_tags['list_item'] . - $this->_tag_brackets['end']; - $this->_output = $item_tag . str_replace("\n", "\n". $item_tag .' ', $bb_output); - $this->_output = $this->_tag_brackets['start'] . - $this->_bb_tags['list'] . - $this->_tag_brackets['end'] . - $this->_output . - $this->_tag_brackets['start'] . - '/'. - $this->_bb_tags['list'] . - $this->_tag_brackets['end'] - ; - } else { - $this->_output = $this->_tag_brackets['start'] . - $this->_bb_tags['code'] . - $this->_tag_brackets['end'] . - $bb_output . - $this->_tag_brackets['start'] . - '/' . - $this->_bb_tags['code'] . - $this->_tag_brackets['end']; - } - } - -} - -/* - * Local variables: - * tab-width: 4 - * c-basic-offset: 4 - * c-hanging-comment-ender-p: nil - * End: - */ - + + * @copyright 2005 Stoyan Stefanov + * @license http://www.php.net/license/3_0.txt PHP License + * @version CVS: $Id: BB.php,v 1.1 2007/06/03 02:37:08 ssttoo Exp $ + * @link http://pear.php.net/package/Text_Highlighter + */ + +/** + * @ignore + */ + +require_once dirname(__FILE__).'/../Renderer.php'; + +/** + * BB code renderer, based on Andrey Demenev's HTML renderer. + * + * Elements of $options argument of constructor (each being optional): + * + * - 'numbers' - Line numbering TRUE or FALSE + * - 'tabsize' - Tab size, default is 4 + * - 'bb_tags' - An array containing three BB tags, see below + * - 'tag_brackets' - An array that conains opening and closing tags, [ and ] + * - 'colors' - An array with all the colors to be used for highlighting + * + * The default BB tags are: + * - 'color' => 'color' + * - 'list' => 'list' + * - 'list_item' => '*' + * + * The default colors for the highlighter are: + * - 'default' => 'Black', + * - 'code' => 'Gray', + * - 'brackets' => 'Olive', + * - 'comment' => 'Orange', + * - 'mlcomment' => 'Orange', + * - 'quotes' => 'Darkred', + * - 'string' => 'Red', + * - 'identifier' => 'Blue', + * - 'builtin' => 'Teal', + * - 'reserved' => 'Green', + * - 'inlinedoc' => 'Blue', + * - 'var' => 'Darkblue', + * - 'url' => 'Blue', + * - 'special' => 'Navy', + * - 'number' => 'Maroon', + * - 'inlinetags' => 'Blue', + * + * + * @author Stoyan Stefanov + * @category Text + * @package Text_Highlighter + * @copyright 20045 Stoyan Stefanov + * @license http://www.php.net/license/3_0.txt PHP License + * @version Release: 0.5.0 + * @link http://pear.php.net/package/Text_Highlighter + */ + +class Text_Highlighter_Renderer_BB extends Text_Highlighter_Renderer_Array +{ + + /**#@+ + * @access private + */ + + /** + * Line numbering - will use the specified BB tag for listings + * + * @var boolean + */ + var $_numbers = false; + + /** + * BB tags to be used + * + * @var array + */ + var $_bb_tags = array ( + 'color' => 'color', + 'list' => 'list', + 'list_item' => '*', + 'code' => 'code', + ); + + /** + * BB brackets - [ and ] + * + * @var array + */ + var $_tag_brackets = array ('start' => '[', 'end' => ']'); + + /** + * Colors map + * + * @var boolean + */ + var $_colors = array( + 'default' => 'Black', + 'code' => 'Gray', + 'brackets' => 'Olive', + 'comment' => 'Orange', + 'mlcomment' => 'Orange', + 'quotes' => 'Darkred', + 'string' => 'Red', + 'identifier' => 'Blue', + 'builtin' => 'Teal', + 'reserved' => 'Green', + 'inlinedoc' => 'Blue', + 'var' => 'Darkblue', + 'url' => 'Blue', + 'special' => 'Navy', + 'number' => 'Maroon', + 'inlinetags' => 'Blue', + ); + + /**#@-*/ + + /** + * Resets renderer state + * + * @access protected + * + * + * Descendents of Text_Highlighter call this method from the constructor, + * passing $options they get as parameter. + */ + function reset() + { + parent::reset(); + if (isset($this->_options['numbers'])) { + $this->_numbers = $this->_options['numbers']; + } + if (isset($this->_options['bb_tags'])) { + $this->_bb_tags = array_merge($this->_bb_tags, $this->_options['bb_tags']); + } + if (isset($this->_options['tag_brackets'])) { + $this->_tag_brackets = array_merge($this->_tag_brackets, $this->_options['tag_brackets']); + } + if (isset($this->_options['colors'])) { + $this->_colors = array_merge($this->_colors, $this->_options['colors']); + } + } + + + /** + * Signals that no more tokens are available + * + * @abstract + * @access public + * + */ + function finalize() + { + + // get parent's output + parent::finalize(); + $output = parent::getOutput(); + + $bb_output = ''; + + $color_start = $this->_tag_brackets['start'] . $this->_bb_tags['color'] . '=%s' . $this->_tag_brackets['end']; + $color_end = $this->_tag_brackets['start'] . '/' . $this->_bb_tags['color'] . $this->_tag_brackets['end']; + + // loop through each class=>content pair + foreach ($output AS $token) { + + if ($this->_enumerated) { + $class = $token[0]; + $content = $token[1]; + } else { + $key = key($token); + $class = $key; + $content = $token[$key]; + } + + $iswhitespace = ctype_space($content); + if (!$iswhitespace && !empty($this->_colors[$class])) { + $bb_output .= sprintf($color_start, $this->_colors[$class]); + $bb_output .= $content; + $bb_output .= $color_end; + } else { + $bb_output .= $content; + } + } + + if ($this->_numbers) { + + $item_tag = $this->_tag_brackets['start'] . + $this->_bb_tags['list_item'] . + $this->_tag_brackets['end']; + $this->_output = $item_tag . str_replace("\n", "\n". $item_tag .' ', $bb_output); + $this->_output = $this->_tag_brackets['start'] . + $this->_bb_tags['list'] . + $this->_tag_brackets['end'] . + $this->_output . + $this->_tag_brackets['start'] . + '/'. + $this->_bb_tags['list'] . + $this->_tag_brackets['end'] + ; + } else { + $this->_output = $this->_tag_brackets['start'] . + $this->_bb_tags['code'] . + $this->_tag_brackets['end'] . + $bb_output . + $this->_tag_brackets['start'] . + '/' . + $this->_bb_tags['code'] . + $this->_tag_brackets['end']; + } + } + +} + +/* + * Local variables: + * tab-width: 4 + * c-basic-offset: 4 + * c-hanging-comment-ender-p: nil + * End: + */ + ?> \ No newline at end of file -- cgit v1.2.3