X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=_source%2Fskins%2Foffice2003%2Fskin.js;h=10309ba8ce2cac49b98989d8558168aec121af95;hb=48b1db88210b4160dce439c6e3e32e14af8c106b;hp=e869dc87803fd3a6e557517b08d2c61eb12fc0a9;hpb=ea7e3453c7b0f023b050aca6d9f83ab372860d91;p=ckeditor.git diff --git a/_source/skins/office2003/skin.js b/_source/skins/office2003/skin.js index e869dc8..10309ba 100644 --- a/_source/skins/office2003/skin.js +++ b/_source/skins/office2003/skin.js @@ -1,21 +1,11 @@ /* -Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved. +Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved. For licensing, see LICENSE.html or http://ckeditor.com/license */ CKEDITOR.skins.add( 'office2003', (function() { - var preload = []; - - if ( CKEDITOR.env.ie && CKEDITOR.env.version < 7 ) - { - // For IE6, we need to preload some images, otherwhise they will be - // downloaded several times (CSS background bug). - preload.push( 'icons.png', 'images/sprites_ie6.png', 'images/dialog_sides.gif' ); - } - return { - preload : preload, editor : { css : [ 'editor.css' ] }, dialog : { css : [ 'dialog.css' ] }, templates : { css : [ 'templates.css' ] }, @@ -23,55 +13,61 @@ CKEDITOR.skins.add( 'office2003', (function() }; })() ); -if ( CKEDITOR.dialog ) +(function() { - CKEDITOR.dialog.on( 'resize', function( evt ) - { - var data = evt.data, - width = data.width, - height = data.height, - dialog = data.dialog, - standardsMode = !CKEDITOR.env.quirk; + CKEDITOR.dialog ? dialogSetup() : CKEDITOR.on( 'dialogPluginReady', dialogSetup ); - if ( data.skin != 'office2003' ) - return; + function dialogSetup() + { + CKEDITOR.dialog.on( 'resize', function( evt ) + { + var data = evt.data, + width = data.width, + height = data.height, + dialog = data.dialog, + contents = dialog.parts.contents; + + if ( data.skin != 'office2003' ) + return; - dialog.parts.contents.setStyles( - { - width : width + 'px', - height : height + 'px' - }); + contents.setStyles( + { + width : width + 'px', + height : height + 'px' + }); - if ( !CKEDITOR.env.ie ) - return; + if ( !CKEDITOR.env.ie ) + return; - // Fix the size of the elements which have flexible lengths. - var fixSize = function() - { - var content = dialog.parts.contents, - body = content.getParent(), - innerDialog = body.getParent(); + // Fix the size of the elements which have flexible lengths. + var fixSize = function() + { + var innerDialog = dialog.parts.dialog.getChild( [ 0, 0, 0 ] ), + body = innerDialog.getChild( 0 ), + bodyWidth = body.getSize( 'width' ); + height += body.getChild( 0 ).getSize( 'height' ) + 1; - // tc - var el = innerDialog.getChild( 2 ); - el.setStyle( 'width', ( body.$.offsetWidth ) + 'px' ); + // tc + var el = innerDialog.getChild( 2 ); + el.setSize( 'width', bodyWidth ); - // bc - el = innerDialog.getChild( 7 ); - el.setStyle( 'width', ( body.$.offsetWidth - 28 ) + 'px' ); + // bc + el = innerDialog.getChild( 7 ); + el.setSize( 'width', bodyWidth - 28 ); - // ml - el = innerDialog.getChild( 4 ); - el.setStyle( 'height', ( body.$.offsetHeight - 31 - 14 ) + 'px' ); + // ml + el = innerDialog.getChild( 4 ); + el.setSize( 'height', height ); - // mr - el = innerDialog.getChild( 5 ); - el.setStyle( 'height', ( body.$.offsetHeight - 31 - 14 ) + 'px' ); - }; - setTimeout( fixSize, 100 ); + // mr + el = innerDialog.getChild( 5 ); + el.setSize( 'height', height ); + }; + setTimeout( fixSize, 100 ); - // Ensure size is correct for RTL mode. (#4003) - if ( evt.editor.lang.dir == 'rtl' ) - setTimeout( fixSize, 1000 ); - }); -} + // Ensure size is correct for RTL mode. (#4003) + if ( evt.editor.lang.dir == 'rtl' ) + setTimeout( fixSize, 1000 ); + }); + } +})();