Index: /CKEditor/branches/prototype/_source/core/config.js
===================================================================
--- /CKEditor/branches/prototype/_source/core/config.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/core/config.js	(revision 2938)
@@ -182,265 +182,6 @@
 	 * config.basePopupZIndex = 2000
 	 */
-	basePopupZIndex : 10000,
+	basePopupZIndex : 10000
 
-	/**
-	 * The color of the dialog background cover. It should be a valid CSS color string.
-	 * @type String
-	 * @default white
-	 * @example
-	 * config.backgroundCoverColor = 'rgb(255, 254, 253)';
-	 */
-	backgroundCoverColor : 'white',
-
-	/**
-	 * The opacity of the dialog background cover. It should be a number within the range [0.0, 1.0].
-	 * @type Number
-	 * @default 0.5
-	 * @example
-	 * config.backgroundCoverOpacity = 0.7;
-	 */
-	backgroundCoverOpacity : 0.5,
-
-	/**
-	 * The distance of magnetic borders used in moving and resizing dialogs, measured in pixels.
-	 * @type Number
-	 * @default 20
-	 * @example
-	 * config.magnetic = 30;
-	 */
-	magnetDistance : 20,
-
-
-	pluginConfig :
-	{
-		image :		//Image Dialog and Image button Dialog.
-		{
-			/**
-			 * Show Upload tab.
-			 * @type Boolean
-			 * @default true
-			 */
-			uploadTab : true,
-
-			/**
-			 * Show Browse Server button.
-			 * @type Boolean
-			 * @default true
-			 */
-			browseServer : true,
-
-			/**
-			 * Upload action attribute.
-			 * @type URL
-			 */
-			uploadAction : 'nowhere.php',
-
-			/**
-			 * Show Image preview in the Image Dialog.
-			 * @type Boolean
-			 * @default true
-			 */
-			showPreview : true,
-			showAdvancedTab : true,
-			removeLinkByEmptyURL : true,
-
-			/**
-			 * Startup values
-			 * @type Text
-			 * @default ''
-			 */
-			defaultValues :
-			{
-				alt : '',
-				border : '',
-				hSpace : '',
-				vSpace : '',
-				title : '',
-				classes : '',
-				align : '',
-				style : '',
-				langCode : '',
-				langDir : '',
-
-				/**
-				 * Default Link value.
-				 * @type Text
-				 * @default ''
-				 * @example
-				 * link : './show_gallery.html',
-				 */
-				link : '',
-				target : ''
-			}
-		},
-		link :
-		{
-			uploadTab : true,
-			browseServer : true,
-			uploadAction : 'nowhere.php',
-			showAdvancedTab : true,
-			showTargetTab : true,
-			defaultValues :
-			{
-				/**
-				 * Startup values
-				 * @type Text
-				 * @default ''
-				 */
-				linkType : 'url',
-				protocol : 'http://',
-				target : 'notSet',
-				targetFrameName : '',
-				title : '',
-				type : '',
-				classes : '',
-				langDir : '',
-				langCode : '',
-				charset : '',
-				style : ''
-			}
-		},
-		forms :
-		{
-			defaultValues :
-			{
-				formAction : '',
-				formEncoding : 'text/plain',
-				formTarget : '',
-				formMethod : 'GET',
-				textfieldWidth : '',
-				textfieldMaxChars : '',
-				textfieldType : 'text',
-				textareaCols : '',
-				textareaRows : '',
-				selectSize : '',
-				buttonType : 'button'
-			}
-		},
-		smiley :
-		{
-			// TODO: update descriptions, fix coding style.
-			/**
-			 * List of smiley images displayed in the Smiley dialog.
-			 * @type Array
-			 * @default ['regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif','embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif','devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif','broken_heart.gif','kiss.gif','envelope.gif']
-			 * @example
-			 * config.smileyImages = [ 'tounge.gif', 'smile.gif', 'laugh.gif' ];
-			 */
-			images : [ 'regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif',
-			'embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif',
-			'devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif',
-			'broken_heart.gif','kiss.gif','envelope.gif'],
-			descriptions : [ ':)', ':(', ';)', ':D', ':/', ':P',
-			'', '', '', '', '', '',
-			'', ';(', '', '', '', '',
-			':kiss', '', ],
-
-			//TODO: update path
-			path : CKEDITOR.basePath +  '_source/plugins/smiley/images/',
-			windowWidth : 320,
-			windowHeight : 210,
-			columns : 8
-		},
-		flash :
-		{
-			uploadTab : true,
-			uploadAction : 'nowhere.php',
-			browseServer : true,
-			showAdvancedTab : true,
-			showPropertiesTab : true,
-
-			/**
-			 * Save as EMBED tag only. This tag is unrecommended.
-			 * @type Boolean
-			 * @default false
-			 */
-			embedTagOnly : false,
-
-			/**
-			 * Add EMBED tag as alternative: &lt;object&gt&lt;embed&gt&lt;/embed&gt&lt;/object&gt
-			 * @type Boolean
-			 * @default false
-			 */
-			addEmbedTag : true,
-
-			/**
-			 * Use embedTagOnly and addEmbedTag values on edit.
-			 * @type Boolean
-			 * @default false
-			 */
-			convertOnEdit : false,
-
-			defaultValues :
-			{
-				access :	'',
-				width :		'',
-				height :	'',
-				hSpace :	'',
-				vSpace :	'',
-				cssClass :	'',
-				cssStyle :	'',
-				bgcolor :	'',
-				title :		'',
-				loop :		'true',
-				play :		'true',
-				menu :		'true',
-				align :		'',
-				quality :	'high',
-				scale :		'',
-				flashvars :	'',
-				allowfullscreen:'',
-				windowMode :	''
-			}
-		},
-		table :
-		{
-			defaultValues :
-			{
-				rows :		'3',
-				columns :	'2',
-				border :	'1',
-				align :		'',
-				width :		'200',
-				widthType :	'pixels',
-				height :	'',
-				caption :	'',
-				summary :	'',
-				cellspacing :	'1',
-				cellpadding :	'1'
-			}
-		},
-		newPage :
-		{
-			confirmation : true,
-			resetToStartupContent : false,
-			newPageContent : ''
-		},
-		pagebreak :
-		{
-			/**
-			 * Limit of PageBreakes
-			 * @type Number | Boolean
-			 * @default 'false'
-			 * @example
-			 * // Only 1 PageBreak (2 pages):
-			 * pageBreakeLimit : 1
-			 * // Don't limit
-			 * pageBreakeLimit : false
-			 */
-			pageBreakeLimit : false
-		},
-		print :
-		{
-			/**
-			 * Document to print
-			 * @type Text
-			 * @default 'cke'
-			 * @example
-			 * document : 'page'
-			 */
-			document : 'cke'
-		}
-	}
 };
 
Index: /CKEditor/branches/prototype/_source/plugins/dialog/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/dialog/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/dialog/plugin.js	(revision 2938)
@@ -956,5 +956,5 @@
 				'; z-index: ', editor.config.basePopupZIndex,
 				'; top: 0px; left: 0px; ',
-				'background-color: ', editor.config.backgroundCoverColor,
+				'background-color: ', editor.config.dialog.backgroundCoverColor,
 				'" id="cke_dialog_background_cover">'
 			],
@@ -1012,5 +1012,5 @@
 			scrollFunc();
 		}
-		element.setOpacity( editor.config.backgroundCoverOpacity );
+		element.setOpacity( editor.config.dialog.backgroundCoverOpacity );
 		element.appendTo( CKEDITOR.document.getBody() );
 	},
@@ -1042,5 +1042,5 @@
 			abstractDialogCoords = null,
 			element = dialog.getElement().getFirst(),
-			magnetDistance = dialog._.editor.config.magnetDistance,
+			magnetDistance = dialog._.editor.config.dialog.magnetDistance,
 			mouseMoveHandler = function( evt )
 			{
@@ -2313,2 +2313,32 @@
 	};
 })();
+
+CKEDITOR.config.dialog =
+{
+	/**
+	 * The color of the dialog background cover. It should be a valid CSS color string.
+	 * @type String
+	 * @default white
+	 * @example
+	 * backgroundCoverColor = 'rgb(255, 254, 253)';
+	 */
+	backgroundCoverColor : 'white',
+
+	/**
+	 * The opacity of the dialog background cover. It should be a number within the range [0.0, 1.0].
+	 * @type Number
+	 * @default 0.5
+	 * @example
+	 * backgroundCoverOpacity = 0.7;
+	 */
+	backgroundCoverOpacity : 0.5,
+
+	/**
+	 * The distance of magnetic borders used in moving and resizing dialogs, measured in pixels.
+	 * @type Number
+	 * @default 20
+	 * @example
+	 * magnetic = 30;
+	 */
+	magnetDistance : 20
+};
Index: /CKEditor/branches/prototype/_source/plugins/flash/dialogs/flash.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/flash/dialogs/flash.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/flash/dialogs/flash.js	(revision 2938)
@@ -275,18 +275,18 @@
 		onLoad : function()
 		{
-			if ( editor.config.pluginConfig.flash.uploadTab == false )
+			if ( editor.config.flash.uploadTab == false )
 				this.hidePage( 'Upload' );		//Hide Upload tab.
 
-			if ( editor.config.pluginConfig.flash.showAdvancedTab == false )
+			if ( editor.config.flash.showAdvancedTab == false )
 				this.hidePage( 'advanced' );		//Hide Advanded tab.
 
-			if ( editor.config.pluginConfig.flash.showPropertiesTab == false )
+			if ( editor.config.flash.showPropertiesTab == false )
 				this.hidePage( 'advanced' );		//Hide Proporties tab.
 
-			if ( editor.config.pluginConfig.flash.browseServer == false )
+			if ( editor.config.flash.browseServer == false )
 				this.getContentElement( 'info', 'browse' ).getElement().hide();
 
-			if ( editor.config.pluginConfig.flash.embedTagOnly )
-				editor.config.pluginConfig.flash.addEmbedTag = true;
+			if ( editor.config.flash.embedTagOnly )
+				editor.config.flash.addEmbedTag = true;
 		},
 		onHide : function()
@@ -369,7 +369,7 @@
 			if ( !this.editMode[ 'fakeobject' ] )
 			{
-				if ( editor.config.pluginConfig.flash.embedTagOnly != true  )
+				if ( editor.config.flash.embedTagOnly != true  )
 					this.editObj[ 'object' ] = editor.document.createElement( 'object' );
-				if ( editor.config.pluginConfig.flash.addEmbedTag == true )
+				if ( editor.config.flash.addEmbedTag == true )
 					this.editObj[ 'embed' ] = editor.document.createElement( 'embed' );
 			}
@@ -383,5 +383,5 @@
 
 			// Add PARAMs.
-			if ( editor.config.pluginConfig.flash.embedTagOnly != true )
+			if ( editor.config.flash.embedTagOnly != true )
 				for ( var name in this.changedAttibutes[ 'PARAM' ] ){
 					addParam( this.editObj[ 'object' ], name, this.changedAttibutes[ 'PARAM' ][ name ] );
@@ -408,8 +408,8 @@
 			{
 				// Append EMBED as child.
-				if ( editor.config.pluginConfig.flash.embedTagOnly != true && editor.config.pluginConfig.flash.addEmbedTag )
+				if ( editor.config.flash.embedTagOnly != true && editor.config.flash.addEmbedTag )
 					this.editObj[ 'object' ].append( this.editObj[ 'embed' ] );
 
-				if ( editor.config.pluginConfig.flash.embedTagOnly )
+				if ( editor.config.flash.embedTagOnly )
 					this.editObj[ 'fakeobject' ] = CKEDITOR.plugins.fakeobjects.protectElement( this.editObj[ 'embed' ] );
 				else
@@ -489,5 +489,5 @@
 								id : 'txtWidth',
 								label : editor.lang.flash.width,
-								'default' : editor.config.pluginConfig.flash.defaultValues.width,
+								'default' : editor.config.flash.defaultValues.width,
 								onChange : function()
 								{
@@ -510,5 +510,5 @@
 								id : 'txtHeight',
 								label : editor.lang.flash.height,
-								'default' : editor.config.pluginConfig.flash.defaultValues.height,
+								'default' : editor.config.flash.defaultValues.height,
 								onChange : function()
 								{
@@ -531,5 +531,5 @@
 								id : 'txtHSpace',
 								label : editor.lang.flash.hSpace,
-								'default' : editor.config.pluginConfig.flash.defaultValues.hSpace,
+								'default' : editor.config.flash.defaultValues.hSpace,
 								onChange : function()
 								{
@@ -552,5 +552,5 @@
 								id : 'txtVSpace',
 								label : editor.lang.flash.vSpace,
-								'default' : editor.config.pluginConfig.flash.defaultValues.vSpace,
+								'default' : editor.config.flash.defaultValues.vSpace,
 								onChange : function()
 								{
@@ -594,5 +594,5 @@
 						id : 'upload',
 						label : editor.lang.common.upload,
-						action : editor.config.pluginConfig.image.uploadAction,
+						action : editor.config.image.uploadAction,
 						size : 38
 					},
@@ -619,5 +619,5 @@
 								type : 'select',
 								label : editor.lang.flash.scale,
-								'default' : editor.config.pluginConfig.flash.defaultValues.scale,
+								'default' : editor.config.flash.defaultValues.scale,
 								style : 'width : 100%;',
 								items :
@@ -638,5 +638,5 @@
 								type : 'select',
 								label : editor.lang.flash.access,
-								'default' : editor.config.pluginConfig.flash.defaultValues.access,
+								'default' : editor.config.flash.defaultValues.access,
 								style : 'width : 100%;',
 								items :
@@ -664,5 +664,5 @@
 								type : 'select',
 								label : editor.lang.flash.windowMode,
-								'default' : editor.config.pluginConfig.flash.defaultValues.windowMode,
+								'default' : editor.config.flash.defaultValues.windowMode,
 								style : 'width : 100%;',
 								items :
@@ -683,5 +683,5 @@
 								type : 'select',
 								label : editor.lang.flash.quality,
-								'default' : editor.config.pluginConfig.flash.defaultValues.quality,
+								'default' : editor.config.flash.defaultValues.quality,
 								style : 'width : 100%;',
 								items :
@@ -712,5 +712,5 @@
 								type : 'select',
 								label : editor.lang.flash.align,
-								'default' : editor.config.pluginConfig.flash.defaultValues.align,
+								'default' : editor.config.flash.defaultValues.align,
 								style : 'width : 100%;',
 								items :
@@ -743,5 +743,5 @@
 						id : 'txtFlashvars',
 						label : editor.lang.flash.flashvars,
-						checked : editor.config.pluginConfig.flash.defaultValues.flashvars,
+						checked : editor.config.flash.defaultValues.flashvars,
 						validate : function()
 						{
@@ -754,5 +754,5 @@
 						id : 'chkMenu',
 						label : editor.lang.flash.chkMenu,
-						checked : editor.config.pluginConfig.flash.defaultValues.menu,
+						checked : editor.config.flash.defaultValues.menu,
 						validate : function()
 						{
@@ -765,5 +765,5 @@
 						id : 'chkPlay',
 						label : editor.lang.flash.chkPlay,
-						checked : editor.config.pluginConfig.flash.defaultValues.play,
+						checked : editor.config.flash.defaultValues.play,
 						validate : function()
 						{
@@ -776,5 +776,5 @@
 						id : 'chkLoop',
 						label : editor.lang.flash.chkLoop,
-						checked : editor.config.pluginConfig.flash.defaultValues.loop,
+						checked : editor.config.flash.defaultValues.loop,
 						validate : function()
 						{
@@ -787,5 +787,5 @@
 						id : 'txtChkFull',
 						label : editor.lang.flash.chkFull,
-						checked : editor.config.pluginConfig.flash.defaultValues.allowfullscreen,
+						checked : editor.config.flash.defaultValues.allowfullscreen,
 						validate : function()
 						{
@@ -820,5 +820,5 @@
 								id : 'txtGenTitle',
 								label : editor.lang.common.advisoryTitle,
-								'default' : editor.config.pluginConfig.flash.defaultValues.title,
+								'default' : editor.config.flash.defaultValues.title,
 								validate : function()
 								{
@@ -838,5 +838,5 @@
 								id : 'txtBgcolor',
 								label : editor.lang.flash.bgcolor,
-								'default' : editor.config.pluginConfig.flash.defaultValues.bgcolor,
+								'default' : editor.config.flash.defaultValues.bgcolor,
 								validate : function()
 								{
@@ -849,5 +849,5 @@
 								id : 'txtGenClass',
 								label : editor.lang.common.cssClass,
-								'default' : editor.config.pluginConfig.flash.defaultValues.cssClass,
+								'default' : editor.config.flash.defaultValues.cssClass,
 								validate : function()
 								{
@@ -862,5 +862,5 @@
 						id : 'txtGenStyle',
 						label : editor.lang.common.cssStyle,
-						'default' : editor.config.pluginConfig.flash.defaultValues.cssStyle,
+						'default' : editor.config.flash.defaultValues.cssStyle,
 						validate : function()
 						{
Index: /CKEditor/branches/prototype/_source/plugins/flash/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/flash/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/flash/plugin.js	(revision 2938)
@@ -20,2 +20,54 @@
 	requires : [ 'fakeobjects' ]
 } );
+
+CKEDITOR.config.flash =
+{
+	uploadTab : true,
+	uploadAction : 'nowhere.php',
+	browseServer : true,
+	showAdvancedTab : true,
+	showPropertiesTab : true,
+
+	/**
+	 * Save as EMBED tag only. This tag is unrecommended.
+	 * @type Boolean
+	 * @default false
+	 */
+	embedTagOnly : false,
+
+	/**
+	 * Add EMBED tag as alternative: &lt;object&gt&lt;embed&gt&lt;/embed&gt&lt;/object&gt
+	 * @type Boolean
+	 * @default false
+	 */
+	addEmbedTag : true,
+
+	/**
+	 * Use embedTagOnly and addEmbedTag values on edit.
+	 * @type Boolean
+	 * @default false
+	 */
+	convertOnEdit : false,
+
+	defaultValues :
+	{
+		access :	'',
+		width :		'',
+		height :	'',
+		hSpace :	'',
+		vSpace :	'',
+		cssClass :	'',
+		cssStyle :	'',
+		bgcolor :	'',
+		title :		'',
+		loop :		'true',
+		play :		'true',
+		menu :		'true',
+		align :		'',
+		quality :	'high',
+		scale :		'',
+		flashvars :	'',
+		allowfullscreen:'',
+		windowMode :	''
+	}
+};
Index: /CKEditor/branches/prototype/_source/plugins/forms/dialogs/button.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/forms/dialogs/button.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/forms/dialogs/button.js	(revision 2938)
@@ -121,5 +121,5 @@
 						type : 'select',
 						label : editor.lang.button.type,
-						'default' : editor.config.pluginConfig.forms.defaultValues.buttonType,
+						'default' : editor.config.forms.defaultValues.buttonType,
 						accessKey : 'T',
 						items :
Index: /CKEditor/branches/prototype/_source/plugins/forms/dialogs/form.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/forms/dialogs/form.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/forms/dialogs/form.js	(revision 2938)
@@ -116,5 +116,5 @@
 						type : 'text',
 						label : editor.lang.form.action,
-						'default' : editor.config.pluginConfig.forms.defaultValues.formAction,
+						'default' : editor.config.forms.defaultValues.formAction,
 						accessKey : 'A',
 						validate: function()
@@ -147,5 +147,5 @@
 								style : 'width:100%',
 								accessKey : 'E',
-								'default' : editor.config.pluginConfig.forms.defaultValues.formEncoding,
+								'default' : editor.config.forms.defaultValues.formEncoding,
 								items :
 								[
@@ -173,5 +173,5 @@
 								style : 'width:100%',
 								accessKey : 'M',
-								'default' : editor.config.pluginConfig.forms.defaultValues.formTarget,
+								'default' : editor.config.forms.defaultValues.formTarget,
 								items :
 								[
@@ -193,5 +193,5 @@
 								label : editor.lang.form.method,
 								accessKey : 'M',
-								'default' : editor.config.pluginConfig.forms.defaultValues.formMethod,
+								'default' : editor.config.forms.defaultValues.formMethod,
 								items :
 								[
Index: /CKEditor/branches/prototype/_source/plugins/forms/dialogs/select.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/forms/dialogs/select.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/forms/dialogs/select.js	(revision 2938)
@@ -191,5 +191,5 @@
 								labelLayout : 'horizontal',
 								label : editor.lang.select.size,
-								'default' : editor.config.pluginConfig.forms.defaultValues.selectSize,
+								'default' : editor.config.forms.defaultValues.selectSize,
 								accessKey : 'S',
 								style : 'width:175px',
Index: /CKEditor/branches/prototype/_source/plugins/forms/dialogs/textarea.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/forms/dialogs/textarea.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/forms/dialogs/textarea.js	(revision 2938)
@@ -110,5 +110,5 @@
 						type : 'text',
 						label : editor.lang.textarea.cols,
-						'default' : editor.config.pluginConfig.forms.defaultValues.textareaCols,
+						'default' : editor.config.forms.defaultValues.textareaCols,
 						accessKey : 'C',
 						style : 'width:50px',
@@ -126,5 +126,5 @@
 						type : 'text',
 						label : editor.lang.textarea.rows,
-						'default' : editor.config.pluginConfig.forms.defaultValues.textareaRows,
+						'default' : editor.config.forms.defaultValues.textareaRows,
 						accessKey : 'R',
 						style : 'width:50px',
Index: /CKEditor/branches/prototype/_source/plugins/forms/dialogs/textfield.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/forms/dialogs/textfield.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/forms/dialogs/textfield.js	(revision 2938)
@@ -140,5 +140,5 @@
 								type : 'text',
 								label : editor.lang.textfield.charWidth,
-								'default' : editor.config.pluginConfig.forms.defaultValues.textfieldWidth,
+								'default' : editor.config.forms.defaultValues.textfieldWidth,
 								accessKey : 'C',
 								style : 'width:50px',
@@ -156,5 +156,5 @@
 								type : 'text',
 								label : editor.lang.textfield.maxChars,
-								'default' : editor.config.pluginConfig.forms.defaultValues.textfieldMaxChars,
+								'default' : editor.config.forms.defaultValues.textfieldMaxChars,
 								accessKey : 'M',
 								style : 'width:50px',
@@ -174,5 +174,5 @@
 						type : 'select',
 						label : editor.lang.textfield.type,
-						'default' : editor.config.pluginConfig.forms.defaultValues.textfieldType,
+						'default' : editor.config.forms.defaultValues.textfieldType,
 						accessKey : 'M',
 						items :
Index: /CKEditor/branches/prototype/_source/plugins/forms/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/forms/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/forms/plugin.js	(revision 2938)
@@ -232,2 +232,20 @@
 	}
 }
+
+CKEDITOR.config.forms =
+{
+	defaultValues :
+	{
+		formAction : '',
+		formEncoding : 'text/plain',
+		formTarget : '',
+		formMethod : 'GET',
+		textfieldWidth : '',
+		textfieldMaxChars : '',
+		textfieldType : 'text',
+		textareaCols : '',
+		textareaRows : '',
+		selectSize : '',
+		buttonType : 'button'
+	}
+};
Index: /CKEditor/branches/prototype/_source/plugins/image/dialogs/image.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/image/dialogs/image.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/image/dialogs/image.js	(revision 2938)
@@ -7,5 +7,5 @@
 {
 	// Load image preview.
-	var showPreview = editor.config.pluginConfig.image.showPreview;
+	var showPreview = editor.config.image.showPreview;
 	var regexSize = /^\s*(\d+)((px)|\%)?\s*$/i;
 	var regexValidSize = /^(\d+)\%?$|^$/i;
@@ -527,5 +527,5 @@
 				}
 				//Remove Link, Image exists.
-				else if ( this.editMode[ 'link' ] == true && !this.changedAttibutes[ 'link' ][ '_cke_saved_href' ] && editor.config.pluginConfig.image.removeLinkByEmptyURL == true )
+				else if ( this.editMode[ 'link' ] == true && !this.changedAttibutes[ 'link' ][ '_cke_saved_href' ] && editor.config.image.removeLinkByEmptyURL == true )
 					this.editObj[ 'link' ].remove( true );
 			}
@@ -627,11 +627,11 @@
 				this.hidePage( 'Link' );		//Hide Link tab.
 
-			if ( editor.config.pluginConfig.image.uploadTab == false )
+			if ( editor.config.image.uploadTab == false )
 				this.hidePage( 'Upload' );		//Hide Upload tab.
 
-			if ( editor.config.pluginConfig.image.showAdvancedTab == false )
+			if ( editor.config.image.showAdvancedTab == false )
 				this.hidePage( 'advanced' );		//Hide Advanded tab.
 
-			if ( editor.config.pluginConfig.image.browseServer == false )
+			if ( editor.config.image.browseServer == false )
 				this.getContentElement( 'info', 'browse' ).getElement().hide();
 
@@ -748,5 +748,5 @@
 						label : editor.lang.image.alt,
 						accessKey : 'A',
-						'default' : editor.config.pluginConfig.image.defaultValues.alt,
+						'default' : editor.config.image.defaultValues.alt,
 						onChange : function()
 						{
@@ -853,5 +853,5 @@
 												labelLayout : 'horizontal',
 												label : editor.lang.image.border,
-												'default' : editor.config.pluginConfig.image.defaultValues.border,
+												'default' : editor.config.image.defaultValues.border,
 												onChange : function()
 												{
@@ -872,5 +872,5 @@
 												labelLayout : 'horizontal',
 												label : editor.lang.image.hSpace,
-												'default' : editor.config.pluginConfig.image.defaultValues.hSpace,
+												'default' : editor.config.image.defaultValues.hSpace,
 												onChange : function()
 												{
@@ -891,5 +891,5 @@
 												labelLayout : 'horizontal',
 												label : editor.lang.image.vSpace,
-												'default' : editor.config.pluginConfig.image.defaultValues.vSpace,
+												'default' : editor.config.image.defaultValues.vSpace,
 												onChange : function()
 												{
@@ -912,5 +912,5 @@
 												style : 'width:100%',
 												label : editor.lang.image.align,
-												'default' : editor.config.pluginConfig.image.defaultValues.align,
+												'default' : editor.config.image.defaultValues.align,
 												items :
 												[
@@ -967,5 +967,5 @@
 						label : editor.lang.image.url,
 						style : 'width: 100%',
-						'default' : editor.config.pluginConfig.image.defaultValues.link,
+						'default' : editor.config.image.defaultValues.link,
 						validate: function()
 						{
@@ -993,5 +993,5 @@
 						type : 'select',
 						label : editor.lang.link.target,
-						'default' : editor.config.pluginConfig.image.defaultValues.target,
+						'default' : editor.config.image.defaultValues.target,
 						items :
 						[
@@ -1019,5 +1019,5 @@
 						id : 'upload',
 						label : editor.lang.image.btnUpload,
-						action : editor.config.pluginConfig.image.uploadAction,
+						action : editor.config.image.uploadAction,
 						size : 38
 					},
@@ -1055,5 +1055,5 @@
 								style : 'width : 100%;',
 								label : editor.lang.common.langDir,
-								'default' : editor.config.pluginConfig.image.defaultValues.langDir,
+								'default' : editor.config.image.defaultValues.langDir,
 								items :
 								[
@@ -1072,5 +1072,5 @@
 								id : 'txtLangCode',
 								label : editor.lang.common.langCode,
-								'default' : editor.config.pluginConfig.image.defaultValues.langCode,
+								'default' : editor.config.image.defaultValues.langCode,
 								validate : function()
 								{
@@ -1100,5 +1100,5 @@
 								id : 'txtGenClass',
 								label : editor.lang.common.cssClass,
-								'default' : editor.config.pluginConfig.image.defaultValues.classes,
+								'default' : editor.config.image.defaultValues.classes,
 								validate : function()
 								{
@@ -1111,5 +1111,5 @@
 								id : 'txtGenTitle',
 								label : editor.lang.common.advisoryTitle,
-								'default' : editor.config.pluginConfig.image.defaultValues.title,
+								'default' : editor.config.image.defaultValues.title,
 								onChange : function()
 								{
@@ -1128,5 +1128,5 @@
 						id : 'txtdlgGenStyle',
 						label : editor.lang.common.cssStyle,
-						'default' : editor.config.pluginConfig.image.defaultValues.style,
+						'default' : editor.config.image.defaultValues.style,
 						validate : function()
 						{
Index: /CKEditor/branches/prototype/_source/plugins/image/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/image/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/image/plugin.js	(revision 2938)
@@ -19,2 +19,64 @@
 	}
 } );
+
+//Image Dialog and Image button Dialog.
+CKEDITOR.config.image =
+{
+	/**
+	 * Show Upload tab.
+	 * @type Boolean
+	 * @default true
+	 */
+	uploadTab : true,
+
+	/**
+	 * Show Browse Server button.
+	 * @type Boolean
+	 * @default true
+	 */
+	browseServer : true,
+
+	/**
+	 * Upload action attribute.
+	 * @type URL
+	 */
+	uploadAction : 'nowhere.php',
+
+	/**
+	 * Show Image preview in the Image Dialog.
+	 * @type Boolean
+	 * @default true
+	 */
+	showPreview : true,
+	showAdvancedTab : true,
+	removeLinkByEmptyURL : true,
+
+	/**
+	 * Startup values
+	 * @type Text
+	 * @default ''
+	 */
+	defaultValues :
+	{
+		alt : '',
+		border : '',
+		hSpace : '',
+		vSpace : '',
+		title : '',
+		classes : '',
+		align : '',
+		style : '',
+		langCode : '',
+		langDir : '',
+
+		/**
+		 * Default Link value.
+		 * @type Text
+		 * @default ''
+		 * @example
+		 * link : './show_gallery.html',
+		 */
+		link : '',
+		target : ''
+	}
+};
Index: /CKEditor/branches/prototype/_source/plugins/link/dialogs/link.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/link/dialogs/link.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/link/dialogs/link.js	(revision 2938)
@@ -32,7 +32,7 @@
 		if ( typeValue == 'url' )
 		{
-			if ( editor.config.pluginConfig.link.showTargetTab )
+			if ( editor.config.link.showTargetTab )
 				dialog.showPage( 'target' );
-			if ( editor.config.pluginConfig.link.uploadTab )
+			if ( editor.config.link.uploadTab )
 				dialog.showPage( 'upload' );
 		}
@@ -101,6 +101,6 @@
 		else
 		{
-			this.setValueOf( 'info', 'linkType', editor.config.pluginConfig.link.defaultValues.linkType );
-			this.setValueOf( 'info', 'protocol', editor.config.pluginConfig.link.defaultValues.protocol );
+			this.setValueOf( 'info', 'linkType', editor.config.link.defaultValues.linkType );
+			this.setValueOf( 'info', 'protocol', editor.config.link.defaultValues.protocol );
 			this.setValueOf( 'info', 'url', '' );
 		}
@@ -184,5 +184,5 @@
 						type : 'select',
 						label : editor.lang.link.type,
-						'default' : editor.config.pluginConfig.link.defaultValues.linkType,
+						'default' : editor.config.link.defaultValues.linkType,
 						items :
 						[
@@ -207,5 +207,5 @@
 										type : 'select',
 										label : editor.lang.common.protocol,
-										'default' : editor.config.pluginConfig.link.defaultValues.protocol,
+										'default' : editor.config.link.defaultValues.protocol,
 										style : 'width : 100%;',
 										items :
@@ -343,5 +343,5 @@
 								id : 'linkTargetType',
 								label : editor.lang.link.target,
-								'default' : editor.config.pluginConfig.link.defaultValues.target,
+								'default' : editor.config.link.defaultValues.target,
 								style : 'width : 100%;',
 								'items' :
@@ -361,5 +361,5 @@
 								id : 'linkTargetName',
 								label : editor.lang.link.targetFrameName,
-								'default' : editor.config.pluginConfig.link.defaultValues.targetFrameName
+								'default' : editor.config.link.defaultValues.targetFrameName
 							}
 						]
@@ -495,5 +495,5 @@
 						id : 'upload',
 						label : editor.lang.common.upload,
-						action : editor.config.pluginConfig.link.uploadAction,
+						action : editor.config.link.uploadAction,
 						size : 38
 					},
@@ -531,5 +531,5 @@
 										id : 'advLangDir',
 										label : editor.lang.link.langDir,
-										'default' : editor.config.pluginConfig.link.defaultValues.langDir,
+										'default' : editor.config.link.defaultValues.langDir,
 										style : 'width: 100%;',
 										items :
@@ -562,5 +562,5 @@
 										label : editor.lang.link.langCode,
 										id : 'advLangCode',
-										'default' : editor.config.pluginConfig.link.defaultValues.langCode
+										'default' : editor.config.link.defaultValues.langCode
 									},
 									{
@@ -587,5 +587,5 @@
 										type : 'text',
 										label : editor.lang.link.advisoryTitle,
-										'default' : editor.config.pluginConfig.link.defaultValues.title,
+										'default' : editor.config.link.defaultValues.title,
 										id : 'advTitle'
 									},
@@ -593,5 +593,5 @@
 										type : 'text',
 										label : editor.lang.link.advisoryContentType,
-										'default' : editor.config.pluginConfig.link.defaultValues.type,
+										'default' : editor.config.link.defaultValues.type,
 										id : 'advContentType'
 									}
@@ -606,5 +606,5 @@
 										type : 'text',
 										label : editor.lang.link.cssClasses,
-										'default' : editor.config.pluginConfig.link.defaultValues.classes,
+										'default' : editor.config.link.defaultValues.classes,
 										id : 'advCSSClasses'
 									},
@@ -612,5 +612,5 @@
 										type : 'text',
 										label : editor.lang.link.charset,
-										'default' : editor.config.pluginConfig.link.defaultValues.charset,
+										'default' : editor.config.link.defaultValues.charset,
 										id : 'advCharset'
 									}
@@ -624,5 +624,5 @@
 										type : 'text',
 										label : editor.lang.link.styles,
-										'default' : editor.config.pluginConfig.link.defaultValues.style,
+										'default' : editor.config.link.defaultValues.style,
 										id : 'advStyles'
 									}
@@ -848,14 +848,14 @@
 		onLoad : function()
 		{
-			if ( editor.config.pluginConfig.link.uploadTab == false )
+			if ( editor.config.link.uploadTab == false )
 				this.hidePage( 'upload' );		//Hide Upload tab.
 
-			if ( editor.config.pluginConfig.link.showAdvancedTab == false )
+			if ( editor.config.link.showAdvancedTab == false )
 				this.hidePage( 'advanced' );		//Hide Advanded tab.
 
-			if ( editor.config.pluginConfig.link.browseServer == false )
+			if ( editor.config.link.browseServer == false )
 				this.getContentElement( 'info', 'browse' ).getElement().hide();
 
-			if ( editor.config.pluginConfig.link.showTargetTab == false )
+			if ( editor.config.link.showTargetTab == false )
 				this.hidePage( 'target' );		//Hide Target tab.
 
Index: /CKEditor/branches/prototype/_source/plugins/link/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/link/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/link/plugin.js	(revision 2938)
@@ -82,2 +82,30 @@
 	}
 };
+
+CKEDITOR.config.link =
+{
+	uploadTab : true,
+	browseServer : true,
+	uploadAction : 'nowhere.php',
+	showAdvancedTab : true,
+	showTargetTab : true,
+	defaultValues :
+	{
+		/**
+		 * Startup values
+		 * @type Text
+		 * @default ''
+		 */
+		linkType : 'url',
+		protocol : 'http://',
+		target : 'notSet',
+		targetFrameName : '',
+		title : '',
+		type : '',
+		classes : '',
+		langDir : '',
+		langCode : '',
+		charset : '',
+		style : ''
+	}
+};
Index: /CKEditor/branches/prototype/_source/plugins/newpage/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/newpage/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/newpage/plugin.js	(revision 2938)
@@ -19,8 +19,8 @@
 				command : 'newpage'
 			});
-		if ( editor.config.pluginConfig.newPage.resetToStartupContent )
+		if ( editor.config.newpage.resetToStartupContent )
 			CKEDITOR.plugins.newpage.newContent = editor.getData();
 		else
-			CKEDITOR.plugins.newpage.newContent = editor.config.pluginConfig.newPage.newPageContent;
+			CKEDITOR.plugins.newpage.newContent = editor.config.newpage.newPageContent;
 	}
 });
@@ -31,6 +31,13 @@
 	exec : function( editor )
 	{
-		if ( editor.config.pluginConfig.newPage.confirmation == false || confirm( editor.lang.common.confirmNewPage ) )
+		if ( editor.config.newpage.confirmation == false || confirm( editor.lang.common.confirmNewPage ) )
 			editor.setData( CKEDITOR.plugins.newpage.newContent );
 	}
 };
+
+CKEDITOR.config.newpage =
+{
+	confirmation : true,
+	resetToStartupContent : false,
+	newPageContent : ''
+};
Index: /CKEditor/branches/prototype/_source/plugins/pagebreak/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/pagebreak/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/pagebreak/plugin.js	(revision 2938)
@@ -51,7 +51,22 @@
 	{
 		var element = CKEDITOR.plugins.pagebreak.pageBreakObject( editor, true );
-		if ( editor.config.pluginConfig.pagebreak.pageBreakeLimit !== false)
-			CKEDITOR.plugins.pagebreak.removeOldBreaks( editor, editor.config.pluginConfig.pagebreak.pageBreakeLimit -1 );
+		if ( editor.config.pagebreak.pageBreakeLimit !== false)
+			CKEDITOR.plugins.pagebreak.removeOldBreaks( editor, editor.config.pagebreak.pageBreakeLimit -1 );
 		editor.insertElement( element );
 	}
 };
+
+CKEDITOR.config.pagebreak =
+{
+	/**
+	 * Limit of PageBreakes
+	 * @type Number | Boolean
+	 * @default 'false'
+	 * @example
+	 * // Only 1 PageBreak (2 pages):
+	 * pageBreakeLimit : 1
+	 * // Don't limit
+	 * pageBreakeLimit : false
+	 */
+	pageBreakeLimit : false
+};
Index: /CKEditor/branches/prototype/_source/plugins/print/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/print/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/print/plugin.js	(revision 2938)
@@ -36,5 +36,5 @@
 	exec : function( editor )
 	{
-		if (editor.config.print == 'page' )
+		if ( editor.config.print == 'page' )
 			CKEDITOR.plugins.print.printPage( editor );
 		else
@@ -42,2 +42,14 @@
 	}
 };
+
+CKEDITOR.config.print =
+{
+	/**
+	 * Document to print
+	 * @type Text
+	 * @default 'cke'
+	 * @example
+	 * document : 'page'
+	 */
+	document : 'cke'
+};
Index: /CKEditor/branches/prototype/_source/plugins/smiley/dialogs/smiley.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/smiley/dialogs/smiley.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/smiley/dialogs/smiley.js	(revision 2938)
@@ -33,17 +33,17 @@
 	},
 		html = [ '<table cellspacing="2" cellpadding="2" border="0"><tbody>' ],
-		cellWidth = parseInt( 100 / editor.config.pluginConfig.smiley.columns ) + '%',
-		images = editor.config.pluginConfig.smiley.images,
-		columns = editor.config.pluginConfig.smiley.columns,
+		cellWidth = parseInt( 100 / editor.config.smiley.columns ) + '%',
+		images = editor.config.smiley.images,
+		columns = editor.config.smiley.columns,
 		i;
 
 	for ( i = 0 ; i < images.length ; i++ )
 	{
-		if ( i % editor.config.pluginConfig.smiley.columns == 0 )
+		if ( i % editor.config.smiley.columns == 0 )
 			html.push( '<tr>' );
 
 		html.push( '<td class="dark_background hand centered" style="vertical-align: middle;"><img border="0" title="'+
-		editor.config.pluginConfig.smiley.descriptions[i] +'" src="' +
-				CKEDITOR.tools.htmlEncode( editor.config.pluginConfig.smiley.path + images[i] ) + '" ' +
+		editor.config.smiley.descriptions[i] +'" src="' +
+				CKEDITOR.tools.htmlEncode( editor.config.smiley.path + images[i] ) + '" ' +
 				// IE BUG: Below is a workaround to an IE image loading bug to ensure the image sizes are correct.
 				( CKEDITOR.env.ie ? 'onload="this.setAttribute(\'width\', 2); this.removeAttribute(\'width\');" ' : '' ) +
@@ -66,6 +66,6 @@
 	return {
 		title : editor.lang.smiley.title,
-		minWidth : editor.config.pluginConfig.smiley.windowWidth,
-		minHeight : editor.config.pluginConfig.smiley.windowHeight,
+		minWidth : editor.config.smiley.windowWidth,
+		minHeight : editor.config.smiley.windowHeight,
 		contents : [
 			{
Index: /CKEditor/branches/prototype/_source/plugins/smiley/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/smiley/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/smiley/plugin.js	(revision 2938)
@@ -19,2 +19,25 @@
 	lang : [ 'en' ]
 } );
+
+CKEDITOR.config.smiley =
+{
+	// TODO: update descriptions, fix coding style.
+	/**
+	 * List of smiley images displayed in the Smiley dialog.
+	 * @type Array
+	 * @default ['regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif','embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif','devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif','broken_heart.gif','kiss.gif','envelope.gif']
+	 * @example
+	 * config.smileyImages = [ 'tounge.gif', 'smile.gif', 'laugh.gif' ];
+	 */
+	images : [ 'regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif',
+	'embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif',
+	'devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif',
+	'broken_heart.gif','kiss.gif','envelope.gif'],
+	descriptions : [ ':)', ':(', ';)', ':D', ':/', ':P', '', '', '', '', '', '', '', ';(', '', '', '', '', ':kiss', '', ],
+
+	//TODO: update path
+	path : CKEDITOR.basePath +  '_source/plugins/smiley/images/',
+	windowWidth : 320,
+	windowHeight : 210,
+	columns : 8
+};
Index: /CKEditor/branches/prototype/_source/plugins/specialchar/dialogs/specialchar.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/specialchar/dialogs/specialchar.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/specialchar/dialogs/specialchar.js	(revision 2938)
@@ -8,6 +8,6 @@
 	return {
 		title : editor.lang.specialChar.title,
-		minWidth : 450,
-		minHeight : 350,
+		minWidth : editor.config.specialchar.dialogWidth,
+		minHeight : editor.config.specialchar.dialogHeight,
 		buttons : [ CKEDITOR.dialog.cancelButton ],
 		onLoad :  function()
@@ -17,16 +17,15 @@
 			html.push( '<tbody>' );
 
-			var cols = 17 ;
 			var i = 0 ;
 
-			while ( i < specialChars.length)
+			while ( i < editor.config.specialchar.characters.length )
 			{
 				html.push("<tr>") ;
-				for( var j = 0 ; j < cols ; j++)
+				for( var j = 0 ; j < editor.config.specialchar.columns ; j++)
 				{
-					if (specialChars[i])
+					if (editor.config.specialchar.characters[i])
 					{
-						html.push('<td width="1%" title=' + specialChars[i].replace(/&/g, "&amp;") + ' value="' + specialChars[i].replace(/&/g, "&amp;") + '" class="DarkBackground SpecialCharsOut Hand">');
-						html.push(specialChars[i]);
+						html.push('<td width="1%" title=' + editor.config.specialchar.characters[i].replace(/&/g, "&amp;") + ' value="' + editor.config.specialchar.characters[i].replace(/&/g, "&amp;") + '" class="DarkBackground editor.config.charactersOut Hand">');
+						html.push(editor.config.specialchar.characters[i]);
 					}
 					else
Index: /CKEditor/branches/prototype/_source/plugins/specialchar/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/specialchar/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/specialchar/plugin.js	(revision 2938)
@@ -7,36 +7,4 @@
  * @file Special Character plugin
  */
-
-var specialChars =
-[
-	"!","&quot;","#","$","%","&amp;","\\'","(",")","*","+","-",".","/",
-	"0","1","2","3","4","5","6","7","8","9",":",";",
-	"&lt;","=","&gt;","?","@",
-	"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O",
-	"P","Q","R","S","T","U","V","W","X","Y","Z",
-	"[","]","^","_","`",
-	"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p",
-	"q","r","s","t","u","v","w","x","y","z",
-	"{","|","}","~","&euro;","&lsquo;","&rsquo;","&rsquo;","&ldquo;",
-	"&rdquo;","&ndash;","&mdash;","&iexcl;","&cent;","&pound;",
-	"&curren;","&yen;","&brvbar;","&sect;","&uml;","&copy;","&ordf;",
-	"&laquo;","&not;","&reg;","&macr;","&deg;","&plusmn;","&sup2;",
-	"&sup3;","&acute;","&micro;","&para;","&middot;","&cedil;",
-	"&sup1;","&ordm;","&raquo;","&frac14;","&frac12;","&frac34;",
-	"&iquest;","&Agrave;","&Aacute;","&Acirc;","&Atilde;","&Auml;",
-	"&Aring;","&AElig;","&Ccedil;","&Egrave;","&Eacute;","&Ecirc;",
-	"&Euml;","&Igrave;","&Iacute;","&Icirc;","&Iuml;","&ETH;",
-	"&Ntilde;","&Ograve;","&Oacute;","&Ocirc;","&Otilde;","&Ouml;",
-	"&times;","&Oslash;","&Ugrave;","&Uacute;","&Ucirc;","&Uuml;",
-	"&Yacute;","&THORN;","&szlig;","&agrave;","&aacute;","&acirc;",
-	"&atilde;","&auml;","&aring;","&aelig;","&ccedil;","&egrave;",
-	"&eacute;","&ecirc;","&euml;","&igrave;","&iacute;","&icirc;",
-	"&iuml;","&eth;","&ntilde;","&ograve;","&oacute;","&ocirc;",
-	"&otilde;","&ouml;","&divide;","&oslash;","&ugrave;","&uacute;",
-	"&ucirc;","&uuml;","&uuml;","&yacute;","&thorn;","&yuml;",
-	"&OElig;","&oelig;","&#372;","&#374","&#373","&#375;","&sbquo;",
-	"&#8219;","&bdquo;","&hellip;","&trade;","&#9658;","&bull;",
-	"&rarr;","&rArr;","&hArr;","&diams;","&asymp;"
-];
 
 CKEDITOR.plugins.add( 'specialchar',
@@ -53,2 +21,40 @@
 	}
 } );
+
+CKEDITOR.config.specialchar =
+{
+	columns : 17,
+	dialogWidth : 450,
+	dialogHeight : 350,
+	characters :
+	[
+		"!","&quot;","#","$","%","&amp;","\\'","(",")","*","+","-",".","/",
+		"0","1","2","3","4","5","6","7","8","9",":",";",
+		"&lt;","=","&gt;","?","@",
+		"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O",
+		"P","Q","R","S","T","U","V","W","X","Y","Z",
+		"[","]","^","_","`",
+		"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p",
+		"q","r","s","t","u","v","w","x","y","z",
+		"{","|","}","~","&euro;","&lsquo;","&rsquo;","&rsquo;","&ldquo;",
+		"&rdquo;","&ndash;","&mdash;","&iexcl;","&cent;","&pound;",
+		"&curren;","&yen;","&brvbar;","&sect;","&uml;","&copy;","&ordf;",
+		"&laquo;","&not;","&reg;","&macr;","&deg;","&plusmn;","&sup2;",
+		"&sup3;","&acute;","&micro;","&para;","&middot;","&cedil;",
+		"&sup1;","&ordm;","&raquo;","&frac14;","&frac12;","&frac34;",
+		"&iquest;","&Agrave;","&Aacute;","&Acirc;","&Atilde;","&Auml;",
+		"&Aring;","&AElig;","&Ccedil;","&Egrave;","&Eacute;","&Ecirc;",
+		"&Euml;","&Igrave;","&Iacute;","&Icirc;","&Iuml;","&ETH;",
+		"&Ntilde;","&Ograve;","&Oacute;","&Ocirc;","&Otilde;","&Ouml;",
+		"&times;","&Oslash;","&Ugrave;","&Uacute;","&Ucirc;","&Uuml;",
+		"&Yacute;","&THORN;","&szlig;","&agrave;","&aacute;","&acirc;",
+		"&atilde;","&auml;","&aring;","&aelig;","&ccedil;","&egrave;",
+		"&eacute;","&ecirc;","&euml;","&igrave;","&iacute;","&icirc;",
+		"&iuml;","&eth;","&ntilde;","&ograve;","&oacute;","&ocirc;",
+		"&otilde;","&ouml;","&divide;","&oslash;","&ugrave;","&uacute;",
+		"&ucirc;","&uuml;","&uuml;","&yacute;","&thorn;","&yuml;",
+		"&OElig;","&oelig;","&#372;","&#374","&#373","&#375;","&sbquo;",
+		"&#8219;","&bdquo;","&hellip;","&trade;","&#9658;","&bull;",
+		"&rarr;","&rArr;","&hArr;","&diams;","&asymp;"
+	]
+};
Index: /CKEditor/branches/prototype/_source/plugins/table/dialogs/table.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/table/dialogs/table.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/table/dialogs/table.js	(revision 2938)
@@ -178,5 +178,5 @@
 										widths : [ '60%','40%' ],
 										style : 'width:105px',
-										'default' : editor.config.pluginConfig.table.defaultValues.rows,
+										'default' : editor.config.table.defaultValues.rows,
 										label : editor.lang.table.rows,
 										validate: function( ) {
@@ -198,5 +198,5 @@
 										widths : [ '60%','40%' ],
 										style : 'width:105px',
-										'default' : editor.config.pluginConfig.table.defaultValues.columns,
+										'default' : editor.config.table.defaultValues.columns,
 										label : editor.lang.table.columns,
 										validate: function( ) {
@@ -218,5 +218,5 @@
 										widths : [ '60%','40%' ],
 										style : 'width:105px',
-										'default' : editor.config.pluginConfig.table.defaultValues.border,
+										'default' : editor.config.table.defaultValues.border,
 										label : editor.lang.table.border,
 										validate: function( ) {
@@ -236,5 +236,5 @@
 										type : 'select',
 										labelLayout : 'horizontal',
-										'default' : editor.config.pluginConfig.table.defaultValues.align,
+										'default' : editor.config.table.defaultValues.align,
 										widths : [ '40%','60%' ],
 										label : editor.lang.table.align,
@@ -271,5 +271,5 @@
 												widths : [ '50%','50%' ],
 												label : editor.lang.table.width,
-												'default' : editor.config.pluginConfig.table.defaultValues.width,
+												'default' : editor.config.table.defaultValues.width,
 												validate: function( ) {
 													if ( this.getValue() != '' )
@@ -290,5 +290,5 @@
 												widths : [ '0%','100%' ],
 												label : '',
-												'default' : editor.config.pluginConfig.table.defaultValues.widthType,
+												'default' : editor.config.table.defaultValues.widthType,
 												items :
 												[
@@ -310,5 +310,5 @@
 												widths : [ '50%','50%' ],
 												label : editor.lang.table.height,
-												'default' : editor.config.pluginConfig.table.defaultValues.height,
+												'default' : editor.config.table.defaultValues.height,
 												validate: function( ) {
 													if ( this.getValue() != '' )
@@ -336,5 +336,5 @@
 										style : 'width:140px',
 										label : editor.lang.table.cellSpace,
-										'default' : editor.config.pluginConfig.table.defaultValues.cellspacing,
+										'default' : editor.config.table.defaultValues.cellspacing,
 										validate: function( ) {
 											if ( this.getValue() != '' )
@@ -356,5 +356,5 @@
 										style : 'width:140px',
 										label : editor.lang.table.cellPad,
-										'default' : editor.config.pluginConfig.table.defaultValues.cellpadding,
+										'default' : editor.config.table.defaultValues.cellpadding,
 										validate: function( ) {
 											if ( this.getValue() != '' )
@@ -384,5 +384,5 @@
 						widths : [ '30%','70%' ],
 						labelLayout : 'horizontal',
-						'default' : editor.config.pluginConfig.table.defaultValues.caption,
+						'default' : editor.config.table.defaultValues.caption,
 						style : 'width:400px'
 					},
@@ -392,5 +392,5 @@
 						labelLayout : 'horizontal',
 						label : editor.lang.table.summary,
-						'default' : editor.config.pluginConfig.table.defaultValues.summary,
+						'default' : editor.config.table.defaultValues.summary,
 						widths : [ '30%','70%' ],
 						accessKey : 'A',
Index: /CKEditor/branches/prototype/_source/plugins/table/plugin.js
===================================================================
--- /CKEditor/branches/prototype/_source/plugins/table/plugin.js	(revision 2937)
+++ /CKEditor/branches/prototype/_source/plugins/table/plugin.js	(revision 2938)
@@ -19,2 +19,20 @@
 	}
 } );
+
+CKEDITOR.config.table =
+{
+	defaultValues :
+	{
+		rows :		'3',
+		columns :	'2',
+		border :	'1',
+		align :		'',
+		width :		'200',
+		widthType :	'pixels',
+		height :	'',
+		caption :	'',
+		summary :	'',
+		cellspacing :	'1',
+		cellpadding :	'1'
+	}
+};
