b79604512ddb203bec0d8a1278357af2c11d6ee1.svn-base
1.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
/*
Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/
CKEDITOR.plugins.add( 'table',
{
requires : [ 'dialog' ],
init : function( editor )
{
var table = CKEDITOR.plugins.table,
lang = editor.lang.table;
editor.addCommand( 'table', new CKEDITOR.dialogCommand( 'table' ) );
editor.addCommand( 'tableProperties', new CKEDITOR.dialogCommand( 'tableProperties' ) );
editor.ui.addButton( 'Table',
{
label : lang.toolbar,
command : 'table'
});
CKEDITOR.dialog.add( 'table', this.path + 'dialogs/table.js' );
CKEDITOR.dialog.add( 'tableProperties', this.path + 'dialogs/table.js' );
// If the "menu" plugin is loaded, register the menu items.
if ( editor.addMenuItems )
{
editor.addMenuItems(
{
table :
{
label : lang.menu,
command : 'tableProperties',
group : 'table',
order : 5
},
tabledelete :
{
label : lang.deleteTable,
command : 'tableDelete',
group : 'table',
order : 1
}
} );
}
editor.on( 'doubleclick', function( evt )
{
var element = evt.data.element;
if ( element.is( 'table' ) )
evt.data.dialog = 'tableProperties';
});
// If the "contextmenu" plugin is loaded, register the listeners.
if ( editor.contextMenu )
{
editor.contextMenu.addListener( function( element, selection )
{
if ( !element || element.isReadOnly() )
return null;
var isTable = element.hasAscendant( 'table', 1 );
if ( isTable )
{
return {
tabledelete : CKEDITOR.TRISTATE_OFF,
table : CKEDITOR.TRISTATE_OFF
};
}
return null;
} );
}
}
} );