diff -r fd8fb93e1b6a -r a361355b55c7 src/pyams_skin/resources/js/ext/tinymce/dev/plugins/visualblocks/plugin.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/pyams_skin/resources/js/ext/tinymce/dev/plugins/visualblocks/plugin.js Wed Jun 17 10:00:10 2015 +0200 @@ -0,0 +1,86 @@ +/** + * plugin.js + * + * Copyright 2012, Moxiecode Systems AB + * Released under LGPL License. + * + * License: http://www.tinymce.com/license + * Contributing: http://www.tinymce.com/contributing + */ + +/*global tinymce:true */ + +tinymce.PluginManager.add('visualblocks', function(editor, url) { + var cssId, visualBlocksMenuItem, enabled; + + // We don't support older browsers like IE6/7 and they don't provide prototypes for DOM objects + if (!window.NodeList) { + return; + } + + function toggleActiveState() { + var self = this; + + self.active(enabled); + + editor.on('VisualBlocks', function() { + self.active(editor.dom.hasClass(editor.getBody(), 'mce-visualblocks')); + }); + } + + editor.addCommand('mceVisualBlocks', function() { + var dom = editor.dom, linkElm; + + if (!cssId) { + cssId = dom.uniqueId(); + linkElm = dom.create('link', { + id: cssId, + rel: 'stylesheet', + href: url + '/css/visualblocks.css' + }); + + editor.getDoc().getElementsByTagName('head')[0].appendChild(linkElm); + } + + // Toggle on/off visual blocks while computing previews + editor.on("PreviewFormats AfterPreviewFormats", function(e) { + if (enabled) { + dom.toggleClass(editor.getBody(), 'mce-visualblocks', e.type == "afterpreviewformats"); + } + }); + + dom.toggleClass(editor.getBody(), 'mce-visualblocks'); + enabled = editor.dom.hasClass(editor.getBody(), 'mce-visualblocks'); + + if (visualBlocksMenuItem) { + visualBlocksMenuItem.active(dom.hasClass(editor.getBody(), 'mce-visualblocks')); + } + + editor.fire('VisualBlocks'); + }); + + editor.addButton('visualblocks', { + title: 'Show blocks', + cmd: 'mceVisualBlocks', + onPostRender: toggleActiveState + }); + + editor.addMenuItem('visualblocks', { + text: 'Show blocks', + cmd: 'mceVisualBlocks', + onPostRender: toggleActiveState, + selectable: true, + context: 'view', + prependToContext: true + }); + + editor.on('init', function() { + if (editor.settings.visualblocks_default_state) { + editor.execCommand('mceVisualBlocks', false, null, {skip_focus: true}); + } + }); + + editor.on('remove', function() { + editor.dom.removeClass(editor.getBody(), 'mce-visualblocks'); + }); +});