1*577bb62eSSascha Leib<?php 2*577bb62eSSascha Leib/** 3*577bb62eSSascha Leib * Action Component for the Ad-Hoc Wrap Plugin 4*577bb62eSSascha Leib * 5*577bb62eSSascha Leib * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 6*577bb62eSSascha Leib * @author Andreas Gohr <andi@splitbrain.org> 7*577bb62eSSascha Leib * @author Sascha Leib <sascha.leib(at)kolmio.com> 8*577bb62eSSascha Leib */ 9*577bb62eSSascha Leib 10*577bb62eSSascha Leibclass action_plugin_adhocwrap extends DokuWiki_Action_Plugin { 11*577bb62eSSascha Leib 12*577bb62eSSascha Leib /** 13*577bb62eSSascha Leib * register the eventhandlers 14*577bb62eSSascha Leib * 15*577bb62eSSascha Leib * @author Andreas Gohr <andi@splitbrain.org> 16*577bb62eSSascha Leib * @author Sascha Leib <sascha.leib(at)kolmio.com> 17*577bb62eSSascha Leib */ 18*577bb62eSSascha Leib function register(Doku_Event_Handler $controller){ 19*577bb62eSSascha Leib $controller->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'handle_toolbar', array ()); 20*577bb62eSSascha Leib } 21*577bb62eSSascha Leib 22*577bb62eSSascha Leib function handle_toolbar(Doku_Event $event, $param) { 23*577bb62eSSascha Leib 24*577bb62eSSascha Leib /* create the menu */ 25*577bb62eSSascha Leib $event->data[] = array ( 26*577bb62eSSascha Leib 'type' => 'picker', 27*577bb62eSSascha Leib 'title' => 'Ad-Hoc Wrap', 28*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/wrap.svg', 29*577bb62eSSascha Leib 'id' => 'tbbtn_adhocWrap', 30*577bb62eSSascha Leib 'list' => array( 31*577bb62eSSascha Leib array( 32*577bb62eSSascha Leib 'type' => 'format', 33*577bb62eSSascha Leib 'title' => 'Outline box (div)', 34*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/box-outline.svg', 35*577bb62eSSascha Leib 'open' => '<div box>', 36*577bb62eSSascha Leib 'close' => '</div>', 37*577bb62eSSascha Leib 'sample' => '\nOutline box\n' 38*577bb62eSSascha Leib ), 39*577bb62eSSascha Leib array( 40*577bb62eSSascha Leib 'type' => 'format', 41*577bb62eSSascha Leib 'title' => 'Info-Block (div)', 42*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/information-slab-box-outline.svg', 43*577bb62eSSascha Leib 'open' => '<div info>', 44*577bb62eSSascha Leib 'close' => '</div>', 45*577bb62eSSascha Leib 'sample' => '\nInformation Block\n' 46*577bb62eSSascha Leib ), 47*577bb62eSSascha Leib array( 48*577bb62eSSascha Leib 'type' => 'format', 49*577bb62eSSascha Leib 'title' => 'Tip-Block (div)', 50*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/lightbulb-box-outline.svg', 51*577bb62eSSascha Leib 'open' => '<div tip>', 52*577bb62eSSascha Leib 'close' => '</div>', 53*577bb62eSSascha Leib 'sample' => '\nTip Block\n' 54*577bb62eSSascha Leib ), 55*577bb62eSSascha Leib array( 56*577bb62eSSascha Leib 'type' => 'format', 57*577bb62eSSascha Leib 'title' => 'Important Block (div)', 58*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/alert-box-outline.svg', 59*577bb62eSSascha Leib 'open' => '<div important>', 60*577bb62eSSascha Leib 'close' => '</div>', 61*577bb62eSSascha Leib 'sample' => '\nImportant Block\n' 62*577bb62eSSascha Leib ), 63*577bb62eSSascha Leib array( 64*577bb62eSSascha Leib 'type' => 'format', 65*577bb62eSSascha Leib 'title' => 'Alert Block (div)', 66*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/close-box-outline.svg', 67*577bb62eSSascha Leib 'open' => '<div alert>', 68*577bb62eSSascha Leib 'close' => '</div>', 69*577bb62eSSascha Leib 'sample' => '\nAlert Block\n' 70*577bb62eSSascha Leib ), 71*577bb62eSSascha Leib array( 72*577bb62eSSascha Leib 'type' => 'format', 73*577bb62eSSascha Leib 'title' => 'Inline block (aside)', 74*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/aside-block.svg', 75*577bb62eSSascha Leib 'open' => '<aside outline box>\n', 76*577bb62eSSascha Leib 'close' => '\n</aside>', 77*577bb62eSSascha Leib 'sample' => 'Aside block' 78*577bb62eSSascha Leib ), 79*577bb62eSSascha Leib array( 80*577bb62eSSascha Leib 'type' => 'format', 81*577bb62eSSascha Leib 'title' => 'Illustration block, floating right, with border and outline (aside+figure)', 82*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/float-block-right.svg', 83*577bb62eSSascha Leib 'open' => '<aside float-right><figure outline box>\n', 84*577bb62eSSascha Leib 'close' => '\n<figcaption centered>Figure caption here</figcaption>\n</figure></aside>', 85*577bb62eSSascha Leib 'sample' => 'Figure content' 86*577bb62eSSascha Leib ), 87*577bb62eSSascha Leib array( 88*577bb62eSSascha Leib 'type' => 'format', 89*577bb62eSSascha Leib 'title' => 'Illustration block, floating left, with border and outline (aside+figure)', 90*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/float-block-left.svg', 91*577bb62eSSascha Leib 'open' => '<aside float-left><figure box>\n', 92*577bb62eSSascha Leib 'close' => '\n<figcaption centered>Figure caption here</figcaption>\n</figure></aside>', 93*577bb62eSSascha Leib 'sample' => 'Figure content' 94*577bb62eSSascha Leib ), 95*577bb62eSSascha Leib array( 96*577bb62eSSascha Leib 'type' => 'format', 97*577bb62eSSascha Leib 'title' => 'Layout 2 columns (div)', 98*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/layout-2-columns.svg', 99*577bb62eSSascha Leib 'open' => '<div grid-2-columns>\n<div>\n', 100*577bb62eSSascha Leib 'close' => '\n</div>\n<div>\nColumn 2\n</div>\n</div>', 101*577bb62eSSascha Leib 'sample' => 'Column 1' 102*577bb62eSSascha Leib ), 103*577bb62eSSascha Leib array( 104*577bb62eSSascha Leib 'type' => 'format', 105*577bb62eSSascha Leib 'title' => 'Layout 3 columns (div)', 106*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/layout-3-columns.svg', 107*577bb62eSSascha Leib 'open' => '<div grid-3-columns>\n<div>\n', 108*577bb62eSSascha Leib 'close' => '\n</div>\n<div>\nColumn 2\n</div>\n<div>\nColumn 3\n</div>\n</div>', 109*577bb62eSSascha Leib 'sample' => 'Column 1' 110*577bb62eSSascha Leib ), 111*577bb62eSSascha Leib array( 112*577bb62eSSascha Leib 'type' => 'format', 113*577bb62eSSascha Leib 'title' => 'Marker red', 114*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/marker-red.svg', 115*577bb62eSSascha Leib 'open' => '<mark red>', 116*577bb62eSSascha Leib 'close' => '</mark>', 117*577bb62eSSascha Leib 'sample' => 'Red marked text' 118*577bb62eSSascha Leib ), 119*577bb62eSSascha Leib array( 120*577bb62eSSascha Leib 'type' => 'format', 121*577bb62eSSascha Leib 'title' => 'Marker orange', 122*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/marker-orange.svg', 123*577bb62eSSascha Leib 'open' => '<mark orange>', 124*577bb62eSSascha Leib 'close' => '</mark>', 125*577bb62eSSascha Leib 'sample' => 'Orange highlight' 126*577bb62eSSascha Leib ), 127*577bb62eSSascha Leib array( 128*577bb62eSSascha Leib 'type' => 'format', 129*577bb62eSSascha Leib 'title' => 'Marker green', 130*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/marker-green.svg', 131*577bb62eSSascha Leib 'open' => '<mark green>', 132*577bb62eSSascha Leib 'close' => '</mark>', 133*577bb62eSSascha Leib 'sample' => 'Green marked text' 134*577bb62eSSascha Leib ), 135*577bb62eSSascha Leib array( 136*577bb62eSSascha Leib 'type' => 'format', 137*577bb62eSSascha Leib 'title' => 'Marker cyan', 138*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/marker-cyan.svg', 139*577bb62eSSascha Leib 'open' => '<mark cyan>', 140*577bb62eSSascha Leib 'close' => '</mark>', 141*577bb62eSSascha Leib 'sample' => 'Cyan marked text' 142*577bb62eSSascha Leib ), 143*577bb62eSSascha Leib array( 144*577bb62eSSascha Leib 'type' => 'format', 145*577bb62eSSascha Leib 'title' => 'Marker grey', 146*577bb62eSSascha Leib 'icon' => '../../plugins/adhocwrap/images/marker-grey.svg', 147*577bb62eSSascha Leib 'open' => '<mark grey>', 148*577bb62eSSascha Leib 'close' => '</mark>', 149*577bb62eSSascha Leib 'sample' => 'Grey marked text' 150*577bb62eSSascha Leib ) 151*577bb62eSSascha Leib 152*577bb62eSSascha Leib ) 153*577bb62eSSascha Leib ); 154*577bb62eSSascha Leib } 155*577bb62eSSascha Leib 156*577bb62eSSascha Leib}