JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.5
[ckeditor.git] / _source / plugins / showborders / plugin.js
index 5987be7..46f2b28 100644 (file)
@@ -83,6 +83,14 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                                        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
@@ -153,6 +161,32 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                                                selectedTable[ ( !value || value <= 0 ) ? 'addClass' : 'removeClass' ]( showBorderClassName );\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
@@ -160,6 +194,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
 \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