xref: /plugin/mikioplugin/syntax/buttongroup.php (revision 3a0ad8d394ede994db68f1ed17eff796c659fc4a)
1ac31aaceSJames Collins<?php
2ac31aaceSJames Collins/**
3ac31aaceSJames Collins * Mikio Syntax Plugin: Button Group
4ac31aaceSJames Collins *
57935713eSJames Collins * @link        http://github.com/nomadjimbob/mikioplugin
6ac31aaceSJames Collins * @license     GPL 2 (http://www.gnu.org/licenses/gpl.html)
7ac31aaceSJames Collins * @author      James Collins <james.collins@outlook.com.au>
8ac31aaceSJames Collins */
9ac31aaceSJames Collinsif (!defined('DOKU_INC')) die();
10ac31aaceSJames Collinsif (!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
11*3a0ad8d3SJames Collinsrequire_once(__DIR__.'/core.php');
12ac31aaceSJames Collins
13ac31aaceSJames Collinsclass syntax_plugin_mikioplugin_buttongroup extends syntax_plugin_mikioplugin_core {
14ac31aaceSJames Collins    public $tag                 = 'button-group';
1543f781e0SJames Collins    public $requires_tag        = 'button';
167935713eSJames Collins    public $hasEndTag           = true;
177935713eSJames Collins    public $options             = array(
187935713eSJames Collins        'size'          => array('type'     => 'choice',
197935713eSJames Collins                                 'data'     => array('large'=> array('large', 'lg'), 'small' => array('small', 'sm')),
207935713eSJames Collins                                 'default'  => ''),
217935713eSJames Collins        'vertical'      => array('type'     => 'boolean',   'default'   => 'false'));
22ac31aaceSJames Collins
237935713eSJames Collins    public function __construct() {
247935713eSJames Collins        $this->addCommonOptions('align shadow');
257935713eSJames Collins    }
267935713eSJames Collins
277935713eSJames Collins    public function getAllowedTypes() { return array('formatting', 'substition', 'disabled'); }
287935713eSJames Collins    public function getPType() { return 'normal'; }
29ac31aaceSJames Collins
30ac31aaceSJames Collins    public function render_lexer_enter(Doku_Renderer $renderer, $data) {
317935713eSJames Collins        $classes = $this->buildClass($data, array('size', 'vertical'));
32ac31aaceSJames Collins
337935713eSJames Collins        $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'button-group' . $classes . '" role="group">';
347935713eSJames Collins        $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'button-group-inner" role="group">';
35ac31aaceSJames Collins    }
36ac31aaceSJames Collins
37ac31aaceSJames Collins
38ac31aaceSJames Collins    public function render_lexer_exit(Doku_Renderer $renderer, $data) {
397935713eSJames Collins        $renderer->doc .= '</div></div>';
40ac31aaceSJames Collins    }
41ac31aaceSJames Collins}
42ac31aaceSJames Collins?>