+/*\r
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.\r
+For licensing, see LICENSE.html or http://ckeditor.com/license\r
+*/\r
+\r
+CKEDITOR.plugins.add( 'table',\r
+{\r
+ init : function( editor )\r
+ {\r
+ var table = CKEDITOR.plugins.table,\r
+ lang = editor.lang.table;\r
+\r
+ editor.addCommand( 'table', new CKEDITOR.dialogCommand( 'table' ) );\r
+ editor.addCommand( 'tableProperties', new CKEDITOR.dialogCommand( 'tableProperties' ) );\r
+\r
+ editor.ui.addButton( 'Table',\r
+ {\r
+ label : lang.toolbar,\r
+ command : 'table'\r
+ });\r
+\r
+ CKEDITOR.dialog.add( 'table', this.path + 'dialogs/table.js' );\r
+ CKEDITOR.dialog.add( 'tableProperties', this.path + 'dialogs/table.js' );\r
+\r
+ // If the "menu" plugin is loaded, register the menu items.\r
+ if ( editor.addMenuItems )\r
+ {\r
+ editor.addMenuItems(\r
+ {\r
+ table :\r
+ {\r
+ label : lang.menu,\r
+ command : 'tableProperties',\r
+ group : 'table',\r
+ order : 5\r
+ },\r
+\r
+ tabledelete :\r
+ {\r
+ label : lang.deleteTable,\r
+ command : 'tableDelete',\r
+ group : 'table',\r
+ order : 1\r
+ }\r
+ } );\r
+ }\r
+\r
+ // If the "contextmenu" plugin is loaded, register the listeners.\r
+ if ( editor.contextMenu )\r
+ {\r
+ editor.contextMenu.addListener( function( element, selection )\r
+ {\r
+ if ( !element )\r
+ return null;\r
+\r
+ var isTable = element.is( 'table' ) || element.hasAscendant( 'table' );\r
+\r
+ if ( isTable )\r
+ {\r
+ return {\r
+ tabledelete : CKEDITOR.TRISTATE_OFF,\r
+ table : CKEDITOR.TRISTATE_OFF\r
+ };\r
+ }\r
+\r
+ return null;\r
+ } );\r
+ }\r
+ }\r
+} );\r