X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=program%2Fjs%2Ftiny_mce%2Fplugins%2Fnonbreaking%2Feditor_plugin_src.js;h=b3ea82ee03737a0ac3a6b922b76d3cf445ee29cb;hb=511160353722ebec8c258ddd6fa963ec8851eede;hp=73d547855f4ccbf5da779894edb0ee5ec8105d1b;hpb=ade1655456ffdb799be8081f57ec90a408b99dd9;p=roundcube.git
diff --git a/program/js/tiny_mce/plugins/nonbreaking/editor_plugin_src.js b/program/js/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
index 73d5478..b3ea82e 100644
--- a/program/js/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
@@ -1,62 +1,53 @@
/**
- * $Id: editor_plugin_src.js 42 2006-08-08 14:32:24Z spocke $
+ * editor_plugin_src.js
*
- * @author Moxiecode
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
*/
-/* Import plugin specific language pack */
-tinyMCE.importPluginLanguagePack('nonbreaking');
-
-var TinyMCE_NonBreakingPlugin = {
- getInfo : function() {
- return {
- longname : 'Nonbreaking space',
- author : 'Moxiecode Systems AB',
- authorurl : 'http://tinymce.moxiecode.com',
- infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking',
- version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion
- };
- },
-
- getControlHTML : function(cn) {
- switch (cn) {
- case "nonbreaking":
- return tinyMCE.getButtonHTML(cn, 'lang_nonbreaking_desc', '{$pluginurl}/images/nonbreaking.gif', 'mceNonBreaking', false);
- }
-
- return "";
- },
-
-
- execCommand : function(editor_id, element, command, user_interface, value) {
- var inst = tinyMCE.getInstanceById(editor_id), h;
-
- switch (command) {
- case "mceNonBreaking":
- h = (inst.visualChars && inst.visualChars.state) ? '·' : ' ';
- tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, h);
- return true;
- }
-
- return false;
- },
-
- handleEvent : function(e) {
- var inst, h;
-
- if (!tinyMCE.isOpera && e.type == 'keydown' && e.keyCode == 9 && tinyMCE.getParam('nonbreaking_force_tab', false)) {
- inst = tinyMCE.selectedInstance;
-
- h = (inst.visualChars && inst.visualChars.state) ? '···' : ' ';
- tinyMCE.execInstanceCommand(inst.editorId, 'mceInsertContent', false, h);
-
- tinyMCE.cancelEvent(e);
- return false;
+(function() {
+ tinymce.create('tinymce.plugins.Nonbreaking', {
+ init : function(ed, url) {
+ var t = this;
+
+ t.editor = ed;
+
+ // Register commands
+ ed.addCommand('mceNonBreaking', function() {
+ ed.execCommand('mceInsertContent', false, (ed.plugins.visualchars && ed.plugins.visualchars.state) ? ' ' : ' ');
+ });
+
+ // Register buttons
+ ed.addButton('nonbreaking', {title : 'nonbreaking.nonbreaking_desc', cmd : 'mceNonBreaking'});
+
+ if (ed.getParam('nonbreaking_force_tab')) {
+ ed.onKeyDown.add(function(ed, e) {
+ if (tinymce.isIE && e.keyCode == 9) {
+ ed.execCommand('mceNonBreaking');
+ ed.execCommand('mceNonBreaking');
+ ed.execCommand('mceNonBreaking');
+ tinymce.dom.Event.cancel(e);
+ }
+ });
+ }
+ },
+
+ getInfo : function() {
+ return {
+ longname : 'Nonbreaking space',
+ author : 'Moxiecode Systems AB',
+ authorurl : 'http://tinymce.moxiecode.com',
+ infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking',
+ version : tinymce.majorVersion + "." + tinymce.minorVersion
+ };
}
- return true;
- }
-};
+ // Private methods
+ });
-tinyMCE.addPlugin("nonbreaking", TinyMCE_NonBreakingPlugin);
+ // Register plugin
+ tinymce.PluginManager.add('nonbreaking', tinymce.plugins.Nonbreaking);
+})();
\ No newline at end of file