/*\r
-Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.\r
+Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.\r
For licensing, see LICENSE.html or http://ckeditor.com/license\r
*/\r
\r
if ( command.state != CKEDITOR.TRISTATE_DISABLED )\r
command.refresh( editor );\r
});\r
+\r
+ editor.on( 'removeFormatCleanup', function( evt )\r
+ {\r
+ var element = evt.data;\r
+ if ( editor.getCommand( 'showborders' ).state == CKEDITOR.TRISTATE_ON &&\r
+ element.is( 'table' ) && ( !element.hasAttribute( 'border' ) || parseInt( element.getAttribute( 'border' ), 10 ) <= 0 ) )\r
+ element.addClass( showBorderClassName );\r
+ });\r
},\r
\r
afterInit : function( editor )\r
}\r
} );\r
}\r
+ }\r
+ });\r
\r
- // Table dialog must be aware of it.\r
- CKEDITOR.on( 'dialogDefinition', function( ev )\r
- {\r
- if ( ev.editor != editor )\r
- return;\r
+ // Table dialog must be aware of it.\r
+ CKEDITOR.on( 'dialogDefinition', function( ev )\r
+ {\r
+ var dialogName = ev.data.name;\r
\r
- var dialogName = ev.data.name;\r
+ if ( dialogName == 'table' || dialogName == 'tableProperties' )\r
+ {\r
+ var dialogDefinition = ev.data.definition,\r
+ infoTab = dialogDefinition.getContents( 'info' ),\r
+ borderField = infoTab.get( 'txtBorder' ),\r
+ originalCommit = borderField.commit;\r
\r
- if ( dialogName == 'table' || dialogName == 'tableProperties' )\r
+ borderField.commit = CKEDITOR.tools.override( originalCommit, function( org )\r
+ {\r
+ return function( data, selectedTable )\r
{\r
- var dialogDefinition = ev.data.definition,\r
- infoTab = dialogDefinition.getContents( 'info' ),\r
- borderField = infoTab.get( 'txtBorder' ),\r
- originalCommit = borderField.commit;\r
+ org.apply( this, arguments );\r
+ var value = parseInt( this.getValue(), 10 );\r
+ selectedTable[ ( !value || value <= 0 ) ? 'addClass' : 'removeClass' ]( showBorderClassName );\r
+ };\r
+ } );\r
\r
- borderField.commit = CKEDITOR.tools.override( originalCommit, function( org )\r
- {\r
- return function( data, selectedTable )\r
- {\r
- org.apply( this, arguments );\r
- var value = parseInt( this.getValue(), 10 );\r
- selectedTable[ ( !value || value <= 0 ) ? 'addClass' : 'removeClass' ]( showBorderClassName );\r
- };\r
- } );\r
- }\r
- });\r
- }\r
+ var advTab = dialogDefinition.getContents( 'advanced' ),\r
+ classField = advTab && advTab.get( 'advCSSClasses' );\r
+\r
+ if ( classField )\r
+ {\r
+ classField.setup = CKEDITOR.tools.override( classField.setup, function( originalSetup )\r
+ {\r
+ return function()\r
+ {\r
+ originalSetup.apply( this, arguments );\r
+ this.setValue( this.getValue().replace( /cke_show_border/, '' ) );\r
+ };\r
+ });\r
\r
+ classField.commit = CKEDITOR.tools.override( classField.commit, function( originalCommit )\r
+ {\r
+ return function( data, element )\r
+ {\r
+ originalCommit.apply( this, arguments );\r
+\r
+ if ( !parseInt( element.getAttribute( 'border' ), 10 ) )\r
+ element.addClass( 'cke_show_border' );\r
+ };\r
+ });\r
+ }\r
+ }\r
});\r
+\r
} )();\r
\r
/**\r
* Whether to automatically enable the "show borders" command when the editor loads.\r
+ * (ShowBorders in FCKeditor)\r
+ * @name CKEDITOR.config.startupShowBorders\r
* @type Boolean\r
* @default true\r
* @example\r