|
|
Línea 5: |
Línea 5: |
| var myElement = document.getElementById('mw-hello-world'); | | var myElement = document.getElementById('mw-hello-world'); |
| myElement.innerHTML = '<html>Hello World!!!</html>'; | | myElement.innerHTML = '<html>Hello World!!!</html>'; |
|
| |
| mw.libs.ve.addPlugin( function ( target ) {
| |
| ve.ui.MyTool = function () { /* ... */
| |
| function makeMyTool() {
| |
| //Create and register command
| |
| var myTemplate = [ {
| |
| type: 'mwTransclusionBlock',
| |
| attributes: {
| |
| mw: {
| |
| parts: [ {
| |
| template: {
| |
| target: {
| |
| href: 'Template:MyTemplate',
| |
| wt: 'MyTemplate'
| |
| },
| |
| params: {
| |
| 1: {
| |
| wt: 'my parameter'
| |
| }
| |
| }
| |
| }
| |
| } ]
| |
| }
| |
| }
| |
| }, {
| |
| type: '/mwTransclusionBlock'
| |
| } ];
| |
|
| |
| ve.ui.commandRegistry.register(
| |
| new ve.ui.Command( 'mycommand', 'content', 'insert', {
| |
| args: [ myTemplate, false, true ],
| |
| supportedSelections: [ 'linear' ]
| |
| } )
| |
| );
| |
|
| |
| //Create and register wikitext command
| |
| if ( ve.ui.wikitextCommandRegistry ) {
| |
| ve.ui.wikitextCommandRegistry.register(
| |
| new ve.ui.Command( 'mycommand', 'mwWikitext', 'wrapSelection', {
| |
| args: [ '{{MyTemplate|', '}}', 'my parameter' ],
| |
| supportedSelections: [ 'linear' ]
| |
| } )
| |
| );
| |
| }
| |
|
| |
| //Create and register tool
| |
| function MyTool() {
| |
| MyTool.parent.apply( this, arguments );
| |
| }
| |
| OO.inheritClass( MyTool, ve.ui.MWTransclusionDialogTool );
| |
|
| |
| MyTool.static.name = 'mytool';
| |
| MyTool.static.group = 'insert';
| |
| MyTool.static.title = 'My tool';
| |
| MyTool.static.commandName = 'mycommand';
| |
| ve.ui.toolFactory.register( MyTool );
| |
|
| |
| }
| |
|
| |
| // Initialize
| |
| mw.hook( 've.loadModules' ).add( function( addPlugin ) {
| |
| addPlugin( makeMyTool );
| |
| } );
| |
|
| |
| };
| |
| } );
| |
|
| |
|
| |
|
| }()); | | }()); |