Line # Revision Author
1 3 ahitrov@rambler.ru /**
2 * editor_plugin_src.js
3 *
4 * Copyright 2009, Moxiecode Systems AB
5 * Released under LGPL License.
6 *
7 * License: http://tinymce.moxiecode.com/license
8 * Contributing: http://tinymce.moxiecode.com/contributing
9 */
10
11 (function() {
12 tinymce.create('tinymce.plugins.AdvancedLinkPlugin', {
13 init : function(ed, url) {
14 this.editor = ed;
15
16 // Register commands
17 ed.addCommand('mceAdvLink', function() {
18 var se = ed.selection;
19
20 // No selection and not in link
21 if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A'))
22 return;
23
24 ed.windowManager.open({
25 file : url + '/link.htm',
26 width : 480 + parseInt(ed.getLang('advlink.delta_width', 0)),
27 height : 400 + parseInt(ed.getLang('advlink.delta_height', 0)),
28 inline : 1
29 }, {
30 plugin_url : url
31 });
32 });
33
34 // Register buttons
35 ed.addButton('link', {
36 title : 'advlink.link_desc',
37 cmd : 'mceAdvLink'
38 });
39
40 ed.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink');
41
42 ed.onNodeChange.add(function(ed, cm, n, co) {
43 cm.setDisabled('link', co && n.nodeName != 'A');
44 cm.setActive('link', n.nodeName == 'A' && !n.name);
45 });
46 },
47
48 getInfo : function() {
49 return {
50 longname : 'Advanced link',
51 author : 'Moxiecode Systems AB',
52 authorurl : 'http://tinymce.moxiecode.com',
53 infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',
54 version : tinymce.majorVersion + "." + tinymce.minorVersion
55 };
56 }
57 });
58
59 // Register plugin
60 tinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin);
61 })();