| 1 |
!(function () { |
| 2 |
'use strict'; |
| 3 |
var o = function (e) { |
| 4 |
var t = e, |
| 5 |
n = function () { |
| 6 |
return t; |
| 7 |
}; |
| 8 |
return { |
| 9 |
get: n, |
| 10 |
set: function (e) { |
| 11 |
t = e; |
| 12 |
}, |
| 13 |
clone: function () { |
| 14 |
return o(n()); |
| 15 |
}, |
| 16 |
}; |
| 17 |
}, |
| 18 |
e = tinymce.util.Tools.resolve('tinymce.PluginManager'), |
| 19 |
i = function (e, t) { |
| 20 |
e.fire('VisualBlocks', { state: t }); |
| 21 |
}, |
| 22 |
s = function (e) { |
| 23 |
return e.getParam('visualblocks_default_state', !1); |
| 24 |
}, |
| 25 |
c = function (e) { |
| 26 |
return e.settings.visualblocks_content_css; |
| 27 |
}, |
| 28 |
l = tinymce.util.Tools.resolve('tinymce.dom.DOMUtils'), |
| 29 |
u = tinymce.util.Tools.resolve('tinymce.util.Tools'), |
| 30 |
a = l.DOM.uniqueId(), |
| 31 |
r = function (e, t) { |
| 32 |
var n = u.toArray(e.getElementsByTagName('link')); |
| 33 |
if ( |
| 34 |
0 === |
| 35 |
u.grep(n, function (e) { |
| 36 |
return e.id === a; |
| 37 |
}).length |
| 38 |
) { |
| 39 |
var o = l.DOM.create('link', { id: a, rel: 'stylesheet', href: t }); |
| 40 |
e.getElementsByTagName('head')[0].appendChild(o); |
| 41 |
} |
| 42 |
}, |
| 43 |
m = function (e, t, n) { |
| 44 |
var o = e.dom, |
| 45 |
s = c(e); |
| 46 |
r(e.getDoc(), s || t + '/css/visualblocks.css'), |
| 47 |
o.toggleClass(e.getBody(), 'mce-visualblocks'), |
| 48 |
n.set(!n.get()), |
| 49 |
i(e, n.get()); |
| 50 |
}, |
| 51 |
f = function (e, t, n) { |
| 52 |
e.addCommand('mceVisualBlocks', function () { |
| 53 |
m(e, t, n); |
| 54 |
}); |
| 55 |
}, |
| 56 |
d = function (t, e, n) { |
| 57 |
t.on('PreviewFormats AfterPreviewFormats', function (e) { |
| 58 |
n.get() && |
| 59 |
t.dom.toggleClass(t.getBody(), 'mce-visualblocks', 'afterpreviewformats' === e.type); |
| 60 |
}), |
| 61 |
t.on('init', function () { |
| 62 |
s(t) && m(t, e, n); |
| 63 |
}), |
| 64 |
t.on('remove', function () { |
| 65 |
t.dom.removeClass(t.getBody(), 'mce-visualblocks'); |
| 66 |
}); |
| 67 |
}, |
| 68 |
n = function (n, o) { |
| 69 |
return function (e) { |
| 70 |
var t = e.control; |
| 71 |
t.active(o.get()), |
| 72 |
n.on('VisualBlocks', function (e) { |
| 73 |
t.active(e.state); |
| 74 |
}); |
| 75 |
}; |
| 76 |
}, |
| 77 |
v = function (e, t) { |
| 78 |
e.addButton('visualblocks', { |
| 79 |
active: !1, |
| 80 |
title: 'Show blocks', |
| 81 |
cmd: 'mceVisualBlocks', |
| 82 |
onPostRender: n(e, t), |
| 83 |
}), |
| 84 |
e.addMenuItem('visualblocks', { |
| 85 |
text: 'Show blocks', |
| 86 |
cmd: 'mceVisualBlocks', |
| 87 |
onPostRender: n(e, t), |
| 88 |
selectable: !0, |
| 89 |
context: 'view', |
| 90 |
prependToContext: !0, |
| 91 |
}); |
| 92 |
}; |
| 93 |
e.add('visualblocks', function (e, t) { |
| 94 |
var n = o(!1); |
| 95 |
f(e, t, n), v(e, n), d(e, t, n); |
| 96 |
}); |
| 97 |
})(); |
| 98 |
|