PageRenderTime 49ms CodeModel.GetById 42ms app.highlight 4ms RepoModel.GetById 1ms app.codeStats 0ms

/static/scripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js

http://n23.googlecode.com/
JavaScript | 50 lines | 32 code | 8 blank | 10 comment | 5 complexity | 9798028106d455b95a9d97e062861535 MD5 | raw file
 1/**
 2 * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $
 3 *
 4 * @author Moxiecode
 5 * @copyright Copyright Š 2004-2008, Moxiecode Systems AB, All rights reserved.
 6 */
 7
 8(function() {
 9	tinymce.create('tinymce.plugins.Nonbreaking', {
10		init : function(ed, url) {
11			var t = this;
12
13			t.editor = ed;
14
15			// Register commands
16			ed.addCommand('mceNonBreaking', function() {
17				ed.execCommand('mceInsertContent', false, (ed.plugins.visualchars && ed.plugins.visualchars.state) ? '<span class="mceItemHidden mceVisualNbsp">&middot;</span>' : '&nbsp;');
18			});
19
20			// Register buttons
21			ed.addButton('nonbreaking', {title : 'nonbreaking.nonbreaking_desc', cmd : 'mceNonBreaking'});
22
23			if (ed.getParam('nonbreaking_force_tab')) {
24				ed.onKeyDown.add(function(ed, e) {
25					if (tinymce.isIE && e.keyCode == 9) {
26						ed.execCommand('mceNonBreaking');
27						ed.execCommand('mceNonBreaking');
28						ed.execCommand('mceNonBreaking');
29						tinymce.dom.Event.cancel(e);
30					}
31				});
32			}
33		},
34
35		getInfo : function() {
36			return {
37				longname : 'Nonbreaking space',
38				author : 'Moxiecode Systems AB',
39				authorurl : 'http://tinymce.moxiecode.com',
40				infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking',
41				version : tinymce.majorVersion + "." + tinymce.minorVersion
42			};
43		}
44
45		// Private methods
46	});
47
48	// Register plugin
49	tinymce.PluginManager.add('nonbreaking', tinymce.plugins.Nonbreaking);
50})();