Blame view

mobile/source/ext/ckeditor/_source/plugins/table/plugin.js 1.68 KB
a1684257   Administrator   first commit
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
  /*
  Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
  For licensing, see LICENSE.html or http://ckeditor.com/license
  */
  
  CKEDITOR.plugins.add( 'table',
  {
  	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;
  				} );
  		}
  	}
  } );