[Pkg-javascript-commits] [dojo] 05/18: Imported Upstream version 1.4.2+dfsg

David Prévot taffit at alioth.debian.org
Fri Oct 25 19:59:04 UTC 2013


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository dojo.

commit e419505c7d38580c1481d038bc87faad8ac85eda
Author: David Prévot <taffit at debian.org>
Date:   Thu Oct 24 18:20:30 2013 -0400

    Imported Upstream version 1.4.2+dfsg
---
 dijit/Dialog.js                                  |    2 +-
 dijit/_base/manager.js                           |    7 +-
 dijit/_editor/RichText.js                        |    5 +
 dijit/_editor/nls/cs/LinkDialog.js               |    2 +-
 dijit/_editor/nls/cs/commands.js                 |    2 +-
 dijit/_editor/nls/de/LinkDialog.js               |    2 +-
 dijit/_editor/nls/de/commands.js                 |    2 +-
 dijit/_editor/nls/es/LinkDialog.js               |    2 +-
 dijit/_editor/nls/es/commands.js                 |    2 +-
 dijit/_editor/nls/fr/LinkDialog.js               |    2 +-
 dijit/_editor/nls/fr/commands.js                 |    2 +-
 dijit/_editor/nls/hu/LinkDialog.js               |    2 +-
 dijit/_editor/nls/hu/commands.js                 |    2 +-
 dijit/_editor/nls/it/LinkDialog.js               |    2 +-
 dijit/_editor/nls/it/commands.js                 |    2 +-
 dijit/_editor/nls/ja/LinkDialog.js               |    2 +-
 dijit/_editor/nls/ja/commands.js                 |    2 +-
 dijit/_editor/nls/ko/LinkDialog.js               |    2 +-
 dijit/_editor/nls/ko/commands.js                 |    2 +-
 dijit/_editor/nls/pl/LinkDialog.js               |    2 +-
 dijit/_editor/nls/pl/commands.js                 |    2 +-
 dijit/_editor/nls/pt-pt/LinkDialog.js            |    2 +-
 dijit/_editor/nls/pt-pt/commands.js              |    2 +-
 dijit/_editor/nls/pt/LinkDialog.js               |    2 +-
 dijit/_editor/nls/pt/commands.js                 |    2 +-
 dijit/_editor/nls/ru/LinkDialog.js               |    2 +-
 dijit/_editor/nls/ru/commands.js                 |    2 +-
 dijit/_editor/nls/zh-tw/LinkDialog.js            |    2 +-
 dijit/_editor/nls/zh-tw/commands.js              |    2 +-
 dijit/_editor/nls/zh/LinkDialog.js               |    2 +-
 dijit/_editor/nls/zh/commands.js                 |    2 +-
 dijit/dijit-all.js                               |    2 +-
 dijit/dijit-all.js.uncompressed.js               |   56 +-
 dijit/dijit.js                                   |    2 +-
 dijit/dijit.js.uncompressed.js                   |   15 +-
 dijit/form/_DateTimeTextBox.js                   |    2 +-
 dijit/layout/ScrollingTabController.js           |   58 +-
 dijit/layout/_TabContainerBase.js                |   11 +-
 dijit/nls/dijit-all_cs.js                        |    2 +-
 dijit/nls/dijit-all_de-de.js                     |    2 +-
 dijit/nls/dijit-all_de.js                        |    2 +-
 dijit/nls/dijit-all_es-es.js                     |    2 +-
 dijit/nls/dijit-all_es.js                        |    2 +-
 dijit/nls/dijit-all_fr-fr.js                     |    2 +-
 dijit/nls/dijit-all_fr.js                        |    2 +-
 dijit/nls/dijit-all_hu.js                        |    2 +-
 dijit/nls/dijit-all_it-it.js                     |    2 +-
 dijit/nls/dijit-all_it.js                        |    2 +-
 dijit/nls/dijit-all_ja-jp.js                     |    2 +-
 dijit/nls/dijit-all_ja.js                        |    2 +-
 dijit/nls/dijit-all_ko-kr.js                     |    2 +-
 dijit/nls/dijit-all_ko.js                        |    2 +-
 dijit/nls/dijit-all_nb.js                        |    1 +
 dijit/nls/dijit-all_no.js                        |    1 -
 dijit/nls/dijit-all_pl.js                        |    2 +-
 dijit/nls/dijit-all_pt-br.js                     |    2 +-
 dijit/nls/dijit-all_pt-pt.js                     |    2 +-
 dijit/nls/dijit-all_pt.js                        |    2 +-
 dijit/nls/dijit-all_ru.js                        |    2 +-
 dijit/nls/dijit-all_zh-cn.js                     |    2 +-
 dijit/nls/dijit-all_zh-tw.js                     |    2 +-
 dijit/nls/dijit-all_zh.js                        |    2 +-
 dijit/themes/dijit_rtl.css                       |    3 +
 dijit/themes/nihilo/nihilo_rtl.css               |    3 +
 dijit/themes/soria/soria_rtl.css                 |    3 +
 dijit/themes/tundra/tundra.css                   |    3 +
 dijit/themes/tundra/tundra_rtl.css               |    3 +
 dojo/_base/_loader/bootstrap.js                  |    4 +-
 dojo/build.txt                                   |  576 ++++++++---------
 dojo/dnd/common.js                               |    1 +
 dojo/dojo.js                                     |    2 +-
 dojo/dojo.js.uncompressed.js                     |    4 +-
 dojo/resources/iframe_history.html               |   37 +-
 dojox/analytics/logger/JSON.php                  |  724 ----------------------
 dojox/analytics/logger/dojoxAnalytics.php        |   31 -
 dojox/charting/widget/Chart2D.js                 |    2 +-
 dojox/charting/widget/Chart2D.js.uncompressed.js |   15 +-
 dojox/editor/plugins/Breadcrumb.js               |    2 +-
 dojox/editor/plugins/EntityPalette.js            |    2 +-
 dojox/editor/plugins/FindReplace.js              |    2 +-
 dojox/editor/plugins/InsertEntity.js             |    2 +-
 dojox/editor/plugins/PageBreak.js                |    2 +-
 dojox/editor/plugins/Preview.js                  |    2 +-
 dojox/editor/plugins/Save.js                     |    2 +-
 dojox/editor/plugins/ShowBlockNodes.js           |    2 +-
 dojox/editor/plugins/Smiley.js                   |    2 +-
 dojox/editor/plugins/_SmileyPalette.js           |    2 +-
 dojox/editor/plugins/nls/cs/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/cs/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/cs/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/cs/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/cs/Preview.js           |    1 +
 dojox/editor/plugins/nls/cs/Save.js              |    1 +
 dojox/editor/plugins/nls/cs/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/cs/Smiley.js            |    1 +
 dojox/editor/plugins/nls/cs/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/de/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/de/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/de/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/de/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/de/Preview.js           |    1 +
 dojox/editor/plugins/nls/de/Save.js              |    1 +
 dojox/editor/plugins/nls/de/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/de/Smiley.js            |    1 +
 dojox/editor/plugins/nls/de/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/de/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/es/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/es/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/es/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/es/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/es/Preview.js           |    1 +
 dojox/editor/plugins/nls/es/Save.js              |    1 +
 dojox/editor/plugins/nls/es/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/es/Smiley.js            |    1 +
 dojox/editor/plugins/nls/es/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/es/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/fr/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/fr/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/fr/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/fr/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/fr/Preview.js           |    1 +
 dojox/editor/plugins/nls/fr/Save.js              |    1 +
 dojox/editor/plugins/nls/fr/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/fr/Smiley.js            |    1 +
 dojox/editor/plugins/nls/fr/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/fr/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/hu/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/hu/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/hu/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/hu/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/hu/Preview.js           |    1 +
 dojox/editor/plugins/nls/hu/Save.js              |    1 +
 dojox/editor/plugins/nls/hu/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/hu/Smiley.js            |    1 +
 dojox/editor/plugins/nls/hu/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/hu/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/it/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/it/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/it/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/it/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/it/Preview.js           |    1 +
 dojox/editor/plugins/nls/it/Save.js              |    1 +
 dojox/editor/plugins/nls/it/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/it/Smiley.js            |    1 +
 dojox/editor/plugins/nls/it/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/it/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/ja/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/ja/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/ja/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/ja/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/ja/Preview.js           |    1 +
 dojox/editor/plugins/nls/ja/Save.js              |    1 +
 dojox/editor/plugins/nls/ja/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/ja/Smiley.js            |    1 +
 dojox/editor/plugins/nls/ja/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/ja/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/ko/Breadcrumb.js        |    2 +-
 dojox/editor/plugins/nls/ko/FindReplace.js       |    2 +-
 dojox/editor/plugins/nls/ko/InsertEntity.js      |    2 +-
 dojox/editor/plugins/nls/ko/PageBreak.js         |    2 +-
 dojox/editor/plugins/nls/ko/ShowBlockNodes.js    |    2 +-
 dojox/editor/plugins/nls/ko/Smiley.js            |    1 +
 dojox/editor/plugins/nls/ko/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/ko/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/pl/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/pl/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/pl/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/pl/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/pl/Preview.js           |    1 +
 dojox/editor/plugins/nls/pl/Save.js              |    1 +
 dojox/editor/plugins/nls/pl/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/pl/Smiley.js            |    1 +
 dojox/editor/plugins/nls/pl/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/pl/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/pt/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/pt/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/pt/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/pt/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/pt/Preview.js           |    1 +
 dojox/editor/plugins/nls/pt/Save.js              |    1 +
 dojox/editor/plugins/nls/pt/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/pt/Smiley.js            |    1 +
 dojox/editor/plugins/nls/pt/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/pt/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/ru/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/ru/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/ru/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/ru/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/ru/Preview.js           |    1 +
 dojox/editor/plugins/nls/ru/Save.js              |    1 +
 dojox/editor/plugins/nls/ru/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/ru/Smiley.js            |    1 +
 dojox/editor/plugins/nls/ru/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/ru/latinEntities.js     |    1 +
 dojox/editor/plugins/nls/zh-tw/Breadcrumb.js     |    1 +
 dojox/editor/plugins/nls/zh-tw/FindReplace.js    |    1 +
 dojox/editor/plugins/nls/zh-tw/InsertEntity.js   |    1 +
 dojox/editor/plugins/nls/zh-tw/PageBreak.js      |    1 +
 dojox/editor/plugins/nls/zh-tw/Preview.js        |    1 +
 dojox/editor/plugins/nls/zh-tw/Save.js           |    1 +
 dojox/editor/plugins/nls/zh-tw/ShowBlockNodes.js |    1 +
 dojox/editor/plugins/nls/zh-tw/Smiley.js         |    1 +
 dojox/editor/plugins/nls/zh-tw/TableDialog.js    |    2 +-
 dojox/editor/plugins/nls/zh-tw/latinEntities.js  |    1 +
 dojox/editor/plugins/nls/zh/Breadcrumb.js        |    1 +
 dojox/editor/plugins/nls/zh/FindReplace.js       |    1 +
 dojox/editor/plugins/nls/zh/InsertEntity.js      |    1 +
 dojox/editor/plugins/nls/zh/PageBreak.js         |    1 +
 dojox/editor/plugins/nls/zh/Preview.js           |    1 +
 dojox/editor/plugins/nls/zh/Save.js              |    1 +
 dojox/editor/plugins/nls/zh/ShowBlockNodes.js    |    1 +
 dojox/editor/plugins/nls/zh/Smiley.js            |    1 +
 dojox/editor/plugins/nls/zh/TableDialog.js       |    2 +-
 dojox/editor/plugins/nls/zh/latinEntities.js     |    1 +
 dojox/form/resources/RecieveFile.php             |   37 --
 dojox/grid/DataGrid.js                           |    2 +-
 dojox/grid/DataGrid.js.uncompressed.js           |   19 +-
 dojox/grid/EnhancedGrid.js                       |    2 +-
 dojox/grid/enhanced/nls/cs/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/de/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/es/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/fr/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/hu/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/it/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/ja/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/ko/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/pl/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/pt/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/ru/EnhancedGrid.js       |    1 +
 dojox/grid/enhanced/nls/zh-tw/EnhancedGrid.js    |    1 +
 dojox/grid/enhanced/nls/zh/EnhancedGrid.js       |    2 +-
 dojox/grid/nls/DataGrid_nb.js                    |    1 +
 dojox/grid/nls/DataGrid_no.js                    |    1 -
 dojox/io/proxy/tests/frag.xml                    |    4 -
 dojox/io/proxy/tests/xip.html                    |   62 --
 dojox/resources/explore.php                      |  149 -----
 dojox/widget/ColorPicker.js                      |    2 +-
 dojox/widget/nls/cs/ColorPicker.js               |    1 +
 dojox/widget/nls/de/ColorPicker.js               |    1 +
 dojox/widget/nls/es/ColorPicker.js               |    1 +
 dojox/widget/nls/fr/ColorPicker.js               |    1 +
 dojox/widget/nls/hu/ColorPicker.js               |    1 +
 dojox/widget/nls/it/ColorPicker.js               |    1 +
 dojox/widget/nls/ja/ColorPicker.js               |    1 +
 dojox/widget/nls/ko/ColorPicker.js               |    1 +
 dojox/widget/nls/pl/ColorPicker.js               |    1 +
 dojox/widget/nls/pt/ColorPicker.js               |    1 +
 dojox/widget/nls/ru/ColorPicker.js               |    1 +
 dojox/widget/nls/zh-tw/ColorPicker.js            |    1 +
 dojox/widget/nls/zh/ColorPicker.js               |    1 +
 250 files changed, 645 insertions(+), 1498 deletions(-)

diff --git a/dijit/Dialog.js b/dijit/Dialog.js
index e0017cd..da6b7b5 100644
--- a/dijit/Dialog.js
+++ b/dijit/Dialog.js
@@ -95,7 +95,7 @@ if(this._fadeOut&&this._fadeOut.status()=="playing"){
 _6=true;
 this._fadeOut.stop();
 }
-if(this.open||_6){
+if((this.open||_6)&&!dijit._underlay._destroyed){
 dijit._underlay.hide();
 }
 if(this._moveable){
diff --git a/dijit/_base/manager.js b/dijit/_base/manager.js
index 67caa02..b258b15 100644
--- a/dijit/_base/manager.js
+++ b/dijit/_base/manager.js
@@ -84,7 +84,7 @@ var id;
 do{
 id=_10+"_"+(_10 in dijit._widgetTypeCtr?++dijit._widgetTypeCtr[_10]:dijit._widgetTypeCtr[_10]=0);
 }while(dijit.byId(id));
-return id;
+return dijit._scopeName=="dijit"?id:dijit._scopeName+"_"+id;
 };
 dijit.findWidgets=function(_11){
 var _12=[];
@@ -170,10 +170,15 @@ if(dojo.isWebKit){
 var doc=_1d.contentDocument,_1e=doc&&doc.body;
 return _1e&&_1e.contentEditable=="true";
 }else{
+try{
 doc=_1d.contentWindow.document;
 _1e=doc&&doc.body;
 return _1e&&_1e.firstChild&&_1e.firstChild.contentEditable=="true";
 }
+catch(e){
+return false;
+}
+}
 }
 default:
 return _1d.contentEditable=="true";
diff --git a/dijit/_editor/RichText.js b/dijit/_editor/RichText.js
index ab6fcbe..26226f7 100644
--- a/dijit/_editor/RichText.js
+++ b/dijit/_editor/RichText.js
@@ -700,7 +700,12 @@ break;
 }else{
 if(_4b.nodeType==1){
 _4a=true;
+var tg=_4b.tagName?_4b.tagName.toLowerCase():"";
+if(/br|input|img|base|meta|area|basefont/.test(tg)){
+this._sCall("selectElement",[_4b]);
+}else{
 this._sCall("selectElementChildren",[_4b]);
+}
 break;
 }
 }
diff --git a/dijit/_editor/nls/cs/LinkDialog.js b/dijit/_editor/nls/cs/LinkDialog.js
index b41d6d7..41dad34 100644
--- a/dijit/_editor/nls/cs/LinkDialog.js
+++ b/dijit/_editor/nls/cs/LinkDialog.js
@@ -1 +1 @@
-({"set":"Nastavit","text":"Popis:","insertImageTitle":"Vlastnosti obrázku","url":"Adresa URL:","createLinkTitle":"Vlastnosti odkazu","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Popis:","insertImageTitle":"Vlastnosti obrázku","set":"Nastavit","newWindow":"Nové okno","topWindow":"Okno nejvyšší úrovně","target":"Cíl:","createLinkTitle":"Vlastnosti odkazu","parentWindow":"Nadřízené okno","currentWindow":"Aktuální okno","url":"Adresa URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/cs/commands.js b/dijit/_editor/nls/cs/commands.js
index b0609c9..ce51558 100644
--- a/dijit/_editor/nls/cs/commands.js
+++ b/dijit/_editor/nls/cs/commands.js
@@ -1 +1 @@
-({"removeFormat":"Odebrat formát","copy":"Kopírovat","paste":"Vložit","selectAll":"Vybrat vše","insertOrderedList":"Číslovaný seznam","insertTable":"Vložit/upravit tabulku","underline":"Podtržení","foreColor":"Barva popředí","htmlToggle":"Zdroj HTML","formatBlock":"Styl odstavce","insertHorizontalRule":"Vodorovná čára","delete":"Odstranit","insertUnorderedList":"Seznam s odrážkami","tableProp":"Vlastnost tabulky","insertImage":"Vložit obrázek","superscript":"Horní index","subscript":"Dol [...]
\ No newline at end of file
+({"removeFormat":"Odebrat formát","copy":"Kopírovat","paste":"Vložit","selectAll":"Vybrat vše","insertOrderedList":"Číslovaný seznam","insertTable":"Vložit/upravit tabulku","print":"Tisk","underline":"Podtržení","foreColor":"Barva popředí","htmlToggle":"Zdroj HTML","formatBlock":"Styl odstavce","newPage":"Nová stránka","insertHorizontalRule":"Vodorovná čára","delete":"Odstranit","insertUnorderedList":"Seznam s odrážkami","tableProp":"Vlastnost tabulky","insertImage":"Vložit obrázek","sup [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/de/LinkDialog.js b/dijit/_editor/nls/de/LinkDialog.js
index 2a3c688..b1eab6c 100644
--- a/dijit/_editor/nls/de/LinkDialog.js
+++ b/dijit/_editor/nls/de/LinkDialog.js
@@ -1 +1 @@
-({"set":"Festlegen","text":"Beschreibung:","insertImageTitle":"Grafikeigenschaften","url":"URL:","createLinkTitle":"Linkeigenschaften","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Beschreibung:","insertImageTitle":"Grafikeigenschaften","set":"Festlegen","newWindow":"Neues Fenster","topWindow":"Aktives Fenster","target":"Ziel:","createLinkTitle":"Linkeigenschaften","parentWindow":"Übergeordnetes Fenster","currentWindow":"Aktuelles Fenster","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/de/commands.js b/dijit/_editor/nls/de/commands.js
index c4e1642..8fa589c 100644
--- a/dijit/_editor/nls/de/commands.js
+++ b/dijit/_editor/nls/de/commands.js
@@ -1 +1 @@
-({"removeFormat":"Formatierung entfernen","copy":"Kopieren","paste":"Einfügen","selectAll":"Alles auswählen","insertOrderedList":"Nummerierung","insertTable":"Tabelle einfügen/bearbeiten","underline":"Unterstrichen","foreColor":"Vordergrundfarbe","htmlToggle":"HTML-Quelltext","formatBlock":"Absatzstil","insertHorizontalRule":"Horizontaler Strich","delete":"Löschen","insertUnorderedList":"Aufzählungszeichen","tableProp":"Tabelleneigenschaft","insertImage":"Grafik einfügen","superscript":" [...]
\ No newline at end of file
+({"removeFormat":"Formatierung entfernen","copy":"Kopieren","paste":"Einfügen","selectAll":"Alles auswählen","insertOrderedList":"Nummerierung","insertTable":"Tabelle einfügen/bearbeiten","print":"Drucken","underline":"Unterstrichen","foreColor":"Vordergrundfarbe","htmlToggle":"HTML-Quelltext","formatBlock":"Absatzstil","newPage":"Neue Seite","insertHorizontalRule":"Horizontaler Strich","delete":"Löschen","insertUnorderedList":"Aufzählungszeichen","tableProp":"Tabelleneigenschaft","inser [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/es/LinkDialog.js b/dijit/_editor/nls/es/LinkDialog.js
index 0be43cd..15802d7 100644
--- a/dijit/_editor/nls/es/LinkDialog.js
+++ b/dijit/_editor/nls/es/LinkDialog.js
@@ -1 +1 @@
-({"set":"Establecer","text":"Descripción:","insertImageTitle":"Propiedades de la imagen","url":"URL:","createLinkTitle":"Propiedades del enlace","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Descripción: ","insertImageTitle":"Propiedades de la imagen","set":"Establecer","newWindow":"Nueva ventana","topWindow":"Ventana superior","target":"Destino: ","createLinkTitle":"Propiedades del enlace","parentWindow":"Ventana padre","currentWindow":"Ventana actual","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/es/commands.js b/dijit/_editor/nls/es/commands.js
index 5d5bbf0..0d189dc 100644
--- a/dijit/_editor/nls/es/commands.js
+++ b/dijit/_editor/nls/es/commands.js
@@ -1 +1 @@
-({"removeFormat":"Eliminar formato","copy":"Copiar","paste":"Pegar","selectAll":"Seleccionar todo","insertOrderedList":"Lista numerada","insertTable":"Insertar/Editar tabla","underline":"Subrayado","foreColor":"Color de primer plano","htmlToggle":"Fuente HTML","formatBlock":"Estilo de párrafo","insertHorizontalRule":"Regla horizontal","delete":"Suprimir","insertUnorderedList":"Lista con viñetas","tableProp":"Propiedad de tabla","insertImage":"Insertar imagen","superscript":"Superíndice", [...]
\ No newline at end of file
+({"removeFormat":"Eliminar formato","copy":"Copiar","paste":"Pegar","selectAll":"Seleccionar todo","insertOrderedList":"Lista numerada","insertTable":"Insertar/Editar tabla","print":"Imprimir","underline":"Subrayado","foreColor":"Color de primer plano","htmlToggle":"Fuente HTML","formatBlock":"Estilo de párrafo","newPage":"Nueva página","insertHorizontalRule":"Regla horizontal","delete":"Suprimir","insertUnorderedList":"Lista con viñetas","tableProp":"Propiedad de tabla","insertImage":"I [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/fr/LinkDialog.js b/dijit/_editor/nls/fr/LinkDialog.js
index 567d2f4..7094601 100644
--- a/dijit/_editor/nls/fr/LinkDialog.js
+++ b/dijit/_editor/nls/fr/LinkDialog.js
@@ -1 +1 @@
-({"set":"Définir","text":"Description :","insertImageTitle":"Propriétés de l'image","url":"URL :","createLinkTitle":"Propriétés du lien","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Description :","insertImageTitle":"Propriétés des images","set":"Définir","newWindow":"Nouvelle fenêtre","topWindow":"Première fenêtre","target":"Cible :","createLinkTitle":"Propriétés des liens","parentWindow":"Fenêtre parent","currentWindow":"Fenêtre en cours","url":"URL :"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/fr/commands.js b/dijit/_editor/nls/fr/commands.js
index 40be8b5..df8cb3b 100644
--- a/dijit/_editor/nls/fr/commands.js
+++ b/dijit/_editor/nls/fr/commands.js
@@ -1 +1 @@
-({"removeFormat":"Supprimer la mise en forme","copy":"Copier","paste":"Coller","selectAll":"Sélectionner tout","insertOrderedList":"Liste numérotée","insertTable":"Insérer/Modifier un tableau","underline":"Souligner","foreColor":"Couleur d'avant-plan","htmlToggle":"Source HTML","formatBlock":"Style de paragraphe","insertHorizontalRule":"Règle horizontale","delete":"Supprimer","insertUnorderedList":"Liste à puces","tableProp":"Propriété du tableau","insertImage":"Insérer une image","super [...]
\ No newline at end of file
+({"removeFormat":"Supprimer la mise en forme","copy":"Copier","paste":"Coller","selectAll":"Sélectionner tout","insertOrderedList":"Liste numérotée","insertTable":"Insérer/Modifier un tableau","print":"Imprimer","underline":"Souligner","foreColor":"Couleur avant-plan","htmlToggle":"Source HTML","formatBlock":"Style de paragraphe","newPage":"Nouvelle page","insertHorizontalRule":"Règle horizontale","delete":"Supprimer","insertUnorderedList":"Liste à puces","tableProp":"Propriété du tablea [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/hu/LinkDialog.js b/dijit/_editor/nls/hu/LinkDialog.js
index 07d1fb6..23f765e 100644
--- a/dijit/_editor/nls/hu/LinkDialog.js
+++ b/dijit/_editor/nls/hu/LinkDialog.js
@@ -1 +1 @@
-({"set":"Beállítás","text":"Leírás:","insertImageTitle":"Kép tulajdonságai","url":"URL:","createLinkTitle":"Hivatkozás tulajdonságai","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Leírás:","insertImageTitle":"Kép tulajdonságai","set":"Beállítás","newWindow":"Új ablak","topWindow":"Legfelső szintű ablak","target":"Cél:","createLinkTitle":"Hivatkozás tulajdonságai","parentWindow":"Szülő ablak","currentWindow":"Aktuális ablak","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/hu/commands.js b/dijit/_editor/nls/hu/commands.js
index 6bb3acf..bd016cf 100644
--- a/dijit/_editor/nls/hu/commands.js
+++ b/dijit/_editor/nls/hu/commands.js
@@ -1 +1 @@
-({"removeFormat":"Formázás eltávolítása","copy":"Másolás","paste":"Beillesztés","selectAll":"Összes kijelölése","insertOrderedList":"Számozott lista","insertTable":"Táblázat beszúrása/szerkesztése","underline":"Aláhúzott","foreColor":"Előtérszín","htmlToggle":"HTML forrás","formatBlock":"Bekezdés stílusa","insertHorizontalRule":"Vízszintes vonalzó","delete":"Törlés","insertUnorderedList":"Felsorolásjeles lista","tableProp":"Táblázat tulajdonságai","insertImage":"Kép beszúrása","superscri [...]
\ No newline at end of file
+({"removeFormat":"Formázás eltávolítása","copy":"Másolás","paste":"Beillesztés","selectAll":"Összes kijelölése","insertOrderedList":"Számozott lista","insertTable":"Táblázat beszúrása/szerkesztése","print":"Nyomtatás","underline":"Aláhúzott","foreColor":"Előtérszín","htmlToggle":"HTML forrás","formatBlock":"Bekezdés stílusa","newPage":"Új oldal","insertHorizontalRule":"Vízszintes vonalzó","delete":"Törlés","insertUnorderedList":"Felsorolásjeles lista","tableProp":"Táblázat tulajdonságai" [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/it/LinkDialog.js b/dijit/_editor/nls/it/LinkDialog.js
index dc3f3c1..ad3adef 100644
--- a/dijit/_editor/nls/it/LinkDialog.js
+++ b/dijit/_editor/nls/it/LinkDialog.js
@@ -1 +1 @@
-({"set":"Imposta","text":"Descrizione:","insertImageTitle":"Proprietà immagine","url":"URL:","createLinkTitle":"Proprietà collegamento","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Descrizione:","insertImageTitle":"Proprietà immagine","set":"Imposta","newWindow":"Nuova finestra","topWindow":"Finestra superiore","target":"Destinazione:","createLinkTitle":"Proprietà collegamento","parentWindow":"Finestra padre","currentWindow":"Finestra corrente","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/it/commands.js b/dijit/_editor/nls/it/commands.js
index e20d858..4abbd7e 100644
--- a/dijit/_editor/nls/it/commands.js
+++ b/dijit/_editor/nls/it/commands.js
@@ -1 +1 @@
-({"removeFormat":"Rimuovi formato","copy":"Copia","paste":"Incolla","selectAll":"Seleziona tutto","insertOrderedList":"Elenco numerato","insertTable":"Inserisci/Modifica tabella","print":"Stampa","underline":"Sottolineato","foreColor":"Colore primo piano","htmlToggle":"Origine HTML","formatBlock":"Stile paragrafo","newPage":"Nuova Pagina","insertHorizontalRule":"Righello orizzontale","delete":"Elimina","insertUnorderedList":"Elenco puntato","tableProp":"Proprietà tabella","insertImage":" [...]
\ No newline at end of file
+({"removeFormat":"Rimuovi formato","copy":"Copia","paste":"Incolla","selectAll":"Seleziona tutto","insertOrderedList":"Elenco numerato","insertTable":"Inserisci/Modifica tabella","print":"Stampa","underline":"Sottolinea","foreColor":"Colore primo piano","htmlToggle":"Origine HTML","formatBlock":"Stile paragrafo","newPage":"Nuova pagina","insertHorizontalRule":"Righello orizzontale","delete":"Elimina","insertUnorderedList":"Elenco puntato","tableProp":"Proprietà tabella","insertImage":"In [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/ja/LinkDialog.js b/dijit/_editor/nls/ja/LinkDialog.js
index 877cb84..815f508 100644
--- a/dijit/_editor/nls/ja/LinkDialog.js
+++ b/dijit/_editor/nls/ja/LinkDialog.js
@@ -1 +1 @@
-({"set":"設定","text":"説明:","insertImageTitle":"イメージ・プロパティー","url":"URL:","createLinkTitle":"リンク・プロパティー","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"説明:","insertImageTitle":"イメージ・プロパティー","set":"設定","newWindow":"新規ウィンドウ","topWindow":"最上位ウィンドウ","target":"ターゲット:","createLinkTitle":"リンク・プロパティー","parentWindow":"親ウィンドウ","currentWindow":"現行ウィンドウ","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/ja/commands.js b/dijit/_editor/nls/ja/commands.js
index 3f46c7c..0ca112a 100644
--- a/dijit/_editor/nls/ja/commands.js
+++ b/dijit/_editor/nls/ja/commands.js
@@ -1 +1 @@
-({"removeFormat":"形式の除去","copy":"コピー","paste":"貼り付け","selectAll":"すべて選択","insertOrderedList":"番号付きリスト","insertTable":"テーブルの挿入/編集","underline":"下線","foreColor":"テキストの色","htmlToggle":"HTML ソース","formatBlock":"段落スタイル","insertHorizontalRule":"水平罫線","delete":"削除","insertUnorderedList":"黒丸付きリスト","tableProp":"テーブル・プロパティー","insertImage":"イメージの挿入","superscript":"上付き文字","subscript":"下付き文字","createLink":"リンクの作成","undo":"元に戻す","italic":"イタリック","fontName":"フォント名","justifyLeft":"左揃え","unlink":"リンクの除去" [...]
\ No newline at end of file
+({"removeFormat":"形式の除去","copy":"コピー","paste":"貼り付け","selectAll":"すべて選択","insertOrderedList":"番号付きリスト","insertTable":"テーブルの挿入/編集","print":"印刷","underline":"下線","foreColor":"前景色","htmlToggle":"HTML ソース","formatBlock":"段落スタイル","newPage":"改ページ","insertHorizontalRule":"水平罫線","delete":"削除","insertUnorderedList":"黒丸付きリスト","tableProp":"テーブル・プロパティー","insertImage":"イメージの挿入","superscript":"上付き文字","subscript":"下付き文字","createLink":"リンクの作成","undo":"元に戻す","fullScreen":"フルスクリーンの切り替え","italic":"イタリック"," [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/ko/LinkDialog.js b/dijit/_editor/nls/ko/LinkDialog.js
index e91dd49..1f46bd7 100644
--- a/dijit/_editor/nls/ko/LinkDialog.js
+++ b/dijit/_editor/nls/ko/LinkDialog.js
@@ -1 +1 @@
-({"text":"설명:","insertImageTitle":"이미지 등록 정보","set":"설정","newWindow":"새 창","topWindow":"최 상위 창","target":"대상:","createLinkTitle":"링크 등록 정보","parentWindow":"부모 창","currentWindow":"현재 창","url":"URL:"})
\ No newline at end of file
+({"text":"설명:","insertImageTitle":"이미지 특성","set":"설정","newWindow":"새 창","topWindow":"최상위 창","target":"대상:","createLinkTitle":"링크 특성","parentWindow":"상위 창","currentWindow":"현재 창","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/ko/commands.js b/dijit/_editor/nls/ko/commands.js
index f9db664..4c8f954 100644
--- a/dijit/_editor/nls/ko/commands.js
+++ b/dijit/_editor/nls/ko/commands.js
@@ -1 +1 @@
-({"removeFormat":"형식 제거","copy":"복사","paste":"붙여넣기","selectAll":"모두 선택","insertOrderedList":"번호 목록","insertTable":"테이블 삽입/편집","print":"인쇄","underline":"밑줄","foreColor":"전경색","htmlToggle":"HTML 소스","formatBlock":"단락 양식","newPage":"새 글","insertHorizontalRule":"수평 자","delete":"삭제","appleKey":"⌘${0}","insertUnorderedList":"글머리표 목록","tableProp":"테이블 특성","insertImage":"이미지 삽입","superscript":"위첨자","subscript":"아래첨자","createLink":"링크 작성","undo":"실행 취소","fullScreen":"전체 화면","italic":"이탤릭체","fontN [...]
\ No newline at end of file
+({"removeFormat":"형식 제거","copy":"복사","paste":"붙여넣기","selectAll":"모두 선택","insertOrderedList":"번호 목록","insertTable":"테이블 삽입/편집","print":"인쇄","underline":"밑줄","foreColor":"전경색","htmlToggle":"HTML 소스","formatBlock":"단락 스타일","newPage":"새 페이지","insertHorizontalRule":"수평 자","delete":"삭제","insertUnorderedList":"글머리표 목록","tableProp":"테이블 특성","insertImage":"이미지 삽입","superscript":"위첨자","subscript":"아래첨자","createLink":"링크 작성","undo":"실행 취소","fullScreen":"토글 전체 화면","italic":"기울임체","fontName":"글꼴 이름", [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/pl/LinkDialog.js b/dijit/_editor/nls/pl/LinkDialog.js
index a1c63a7..86f71e5 100644
--- a/dijit/_editor/nls/pl/LinkDialog.js
+++ b/dijit/_editor/nls/pl/LinkDialog.js
@@ -1 +1 @@
-({"set":"Ustaw","text":"Opis:","insertImageTitle":"Właściwości obrazu","url":"Adres URL:","createLinkTitle":"Właściwości odsyłacza","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Opis:","insertImageTitle":"Właściwości obrazu","set":"Ustaw","newWindow":"Nowe okno","topWindow":"Okno najwyższego poziomu","target":"Cel:","createLinkTitle":"Właściwości odsyłacza","parentWindow":"Okno macierzyste","currentWindow":"Bieżące okno","url":"Adres URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/pl/commands.js b/dijit/_editor/nls/pl/commands.js
index d2928ec..8ee8acf 100644
--- a/dijit/_editor/nls/pl/commands.js
+++ b/dijit/_editor/nls/pl/commands.js
@@ -1 +1 @@
-({"removeFormat":"Usuń formatowanie","copy":"Kopiuj","paste":"Wklej","selectAll":"Wybierz wszystko","insertOrderedList":"Lista numerowana","insertTable":"Wstaw/edytuj tabelę","underline":"Podkreślenie","foreColor":"Kolor pierwszego planu","htmlToggle":"Kod źródłowy HTML","formatBlock":"Styl akapitu","insertHorizontalRule":"Linia pozioma","delete":"Usuń","insertUnorderedList":"Lista wypunktowana","tableProp":"Właściwość tabeli","insertImage":"Wstaw obraz","superscript":"Indeks górny","sub [...]
\ No newline at end of file
+({"removeFormat":"Usuń formatowanie","copy":"Kopiuj","paste":"Wklej","selectAll":"Wybierz wszystko","insertOrderedList":"Lista numerowana","insertTable":"Wstaw/edytuj tabelę","print":"Drukuj","underline":"Podkreślenie","foreColor":"Kolor pierwszego planu","htmlToggle":"Źródło HTML","formatBlock":"Styl akapitu","newPage":"Nowa strona","insertHorizontalRule":"Linia pozioma","delete":"Usuń","insertUnorderedList":"Lista wypunktowana","tableProp":"Właściwość tabeli","insertImage":"Wstaw obraz [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/pt-pt/LinkDialog.js b/dijit/_editor/nls/pt-pt/LinkDialog.js
index 2d5f882..09da9f6 100644
--- a/dijit/_editor/nls/pt-pt/LinkDialog.js
+++ b/dijit/_editor/nls/pt-pt/LinkDialog.js
@@ -1 +1 @@
-({"set":"Definir","text":"Descrição:","insertImageTitle":"Propriedades da imagem","url":"URL:","createLinkTitle":"Propriedades da ligação","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"set":"Definir","text":"Descrição:","insertImageTitle":"Propriedades da imagem","url":"URL:","createLinkTitle":"Propriedades da ligação","newWindow":"Nova Janela","topWindow":"Primeira Janela","target":"Destino:","parentWindow":"Janela Pai","currentWindow":"Janela Atual"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/pt-pt/commands.js b/dijit/_editor/nls/pt-pt/commands.js
index 67cad55..678ba22 100644
--- a/dijit/_editor/nls/pt-pt/commands.js
+++ b/dijit/_editor/nls/pt-pt/commands.js
@@ -1 +1 @@
-({"removeFormat":"Remover formato","copy":"Copiar","paste":"Colar","selectAll":"Seleccionar tudo","insertOrderedList":"Lista numerada","insertTable":"Inserir/Editar tabela","underline":"Sublinhado","foreColor":"Cor de primeiro plano","htmlToggle":"Origem HTML","formatBlock":"Estilo de parágrafo","insertHorizontalRule":"Régua horizontal","delete":"Eliminar","insertUnorderedList":"Lista marcada","tableProp":"Propriedades da tabela","insertImage":"Inserir imagem","superscript":"Superior à l [...]
\ No newline at end of file
+({"removeFormat":"Remover formato","copy":"Copiar","paste":"Colar","selectAll":"Seleccionar tudo","insertOrderedList":"Lista numerada","insertTable":"Inserir/Editar tabela","underline":"Sublinhado","foreColor":"Cor de primeiro plano","htmlToggle":"Origem HTML","formatBlock":"Estilo de parágrafo","insertHorizontalRule":"Régua horizontal","delete":"Eliminar","insertUnorderedList":"Lista marcada","tableProp":"Propriedades da tabela","insertImage":"Inserir imagem","superscript":"Superior à l [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/pt/LinkDialog.js b/dijit/_editor/nls/pt/LinkDialog.js
index 55d34aa..0a55795 100644
--- a/dijit/_editor/nls/pt/LinkDialog.js
+++ b/dijit/_editor/nls/pt/LinkDialog.js
@@ -1 +1 @@
-({"set":"Definir","text":"Descrição:","insertImageTitle":"Propriedades de Imagem","url":"URL:","createLinkTitle":"Propriedades de Link","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Descrição:","insertImageTitle":"Propriedades de Imagem","set":"Definir","newWindow":"Nova Janela","topWindow":"Primeira Janela","target":"Destino:","createLinkTitle":"Propriedades de Link","parentWindow":"Janela Pai","currentWindow":"Janela Atual","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/pt/commands.js b/dijit/_editor/nls/pt/commands.js
index 9227d07..271c6cf 100644
--- a/dijit/_editor/nls/pt/commands.js
+++ b/dijit/_editor/nls/pt/commands.js
@@ -1 +1 @@
-({"removeFormat":"Remover Formato","copy":"Copiar","paste":"Colar","selectAll":"Selecionar Tudo","insertOrderedList":"Lista Numerada","insertTable":"Inserir/Editar Tabela","underline":"Sublinhado","foreColor":"Cor de Primeiro Plano","htmlToggle":"Fonte HTML","formatBlock":"Estilo de Parágrafo","insertHorizontalRule":"Régua Horizontal","delete":"Excluir","insertUnorderedList":"Lista com Marcadores","tableProp":"Propriedade da Tabela","insertImage":"Inserir Imagem","superscript":"Sobrescri [...]
\ No newline at end of file
+({"removeFormat":"Remover Formato","copy":"Copiar","paste":"Colar","selectAll":"Selecionar Todos","insertOrderedList":"Lista Numerada","insertTable":"Inserir/Editar Tabela","print":"Impressão","underline":"Sublinhado","foreColor":"Cor do Primeiro Plano","htmlToggle":"Origem HTML","formatBlock":"Estilo de Parágrafo","newPage":"Nova Página","insertHorizontalRule":"Régua Horizontal","delete":"Excluir","insertUnorderedList":"Lista com Marcadores","tableProp":"Propriedade da Tabela","insertIm [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/ru/LinkDialog.js b/dijit/_editor/nls/ru/LinkDialog.js
index 9180528..ddc2f7b 100644
--- a/dijit/_editor/nls/ru/LinkDialog.js
+++ b/dijit/_editor/nls/ru/LinkDialog.js
@@ -1 +1 @@
-({"set":"Задать","text":"Описание:","insertImageTitle":"Свойства изображения","url":"URL:","createLinkTitle":"Свойства ссылки","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"Описание:","insertImageTitle":"Свойства изображения","set":"Задать","newWindow":"Новое окно","topWindow":"Окно верхнего уровня","target":"Целевой объект:","createLinkTitle":"Свойства ссылки","parentWindow":"Родительское окно","currentWindow":"Текущее окно","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/ru/commands.js b/dijit/_editor/nls/ru/commands.js
index cdf1189..bbc7617 100644
--- a/dijit/_editor/nls/ru/commands.js
+++ b/dijit/_editor/nls/ru/commands.js
@@ -1 +1 @@
-({"removeFormat":"Удалить формат","copy":"Копировать","paste":"Вставить","selectAll":"Выбрать все","insertOrderedList":"Нумерованный список","insertTable":"Вставить/изменить таблицу","underline":"Подчеркивание","foreColor":"Цвет текста","htmlToggle":"Исходный текст HTML","formatBlock":"Стиль абзаца","insertHorizontalRule":"Горизонтальная линейка","delete":"Удалить","insertUnorderedList":"Список с маркерами","tableProp":"Свойства таблицы","insertImage":"Вставить изображение","superscript" [...]
\ No newline at end of file
+({"removeFormat":"Удалить формат","copy":"Копировать","paste":"Вставить","selectAll":"Выбрать все","insertOrderedList":"Нумерованный список","insertTable":"Вставить/изменить таблицу","print":"Печать","underline":"Подчеркивание","foreColor":"Цвет текста","htmlToggle":"Код HTML","formatBlock":"Стиль абзаца","newPage":"Создать страницу","insertHorizontalRule":"Горизонтальная линейка","delete":"Удалить","insertUnorderedList":"Список с маркерами","tableProp":"Свойства таблицы","insertImage":" [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/zh-tw/LinkDialog.js b/dijit/_editor/nls/zh-tw/LinkDialog.js
index 7b11c35..a639ac7 100644
--- a/dijit/_editor/nls/zh-tw/LinkDialog.js
+++ b/dijit/_editor/nls/zh-tw/LinkDialog.js
@@ -1 +1 @@
-({"set":"設定","text":"說明:","insertImageTitle":"影像檔內容","url":"URL:","createLinkTitle":"鏈結內容","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"說明:","insertImageTitle":"影像內容","set":"設定","newWindow":"新視窗","topWindow":"最上層視窗","target":"目標:","createLinkTitle":"鏈結內容","parentWindow":"上層視窗","currentWindow":"現行視窗","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/zh-tw/commands.js b/dijit/_editor/nls/zh-tw/commands.js
index 6a955a4..d72dc4e 100644
--- a/dijit/_editor/nls/zh-tw/commands.js
+++ b/dijit/_editor/nls/zh-tw/commands.js
@@ -1 +1 @@
-({"removeFormat":"移除格式","copy":"複製","paste":"貼上","selectAll":"全選","insertOrderedList":"編號清單","insertTable":"插入/編輯表格","underline":"底線","foreColor":"前景顏色","htmlToggle":"HTML 原始檔","formatBlock":"段落樣式","insertHorizontalRule":"水平尺規","delete":"刪除","insertUnorderedList":"項目符號清單","tableProp":"表格內容","insertImage":"插入影像","superscript":"上標","subscript":"下標","createLink":"建立鏈結","undo":"復原","italic":"斜體","fontName":"字型名稱","justifyLeft":"靠左對齊","unlink":"移除鏈結","toggleTableBorder":"切換表格邊框","fontSize":"字 [...]
\ No newline at end of file
+({"removeFormat":"移除格式","copy":"複製","paste":"貼上","selectAll":"全選","insertOrderedList":"編號清單","insertTable":"插入/編輯表格","print":"列印","underline":"底線","foreColor":"前景顏色","htmlToggle":"HTML 原始檔","formatBlock":"段落樣式","newPage":"新建頁面","insertHorizontalRule":"水平尺規","delete":"刪除","insertUnorderedList":"項目符號清單","tableProp":"表格內容","insertImage":"插入影像","superscript":"上標","subscript":"下標","createLink":"建立鏈結","undo":"復原","fullScreen":"切換全螢幕","italic":"斜體","fontName":"字型名稱","justifyLeft":"靠左對齊","unlink [...]
\ No newline at end of file
diff --git a/dijit/_editor/nls/zh/LinkDialog.js b/dijit/_editor/nls/zh/LinkDialog.js
index 222b71e..da4c500 100644
--- a/dijit/_editor/nls/zh/LinkDialog.js
+++ b/dijit/_editor/nls/zh/LinkDialog.js
@@ -1 +1 @@
-({"set":"设置","text":"说明:","insertImageTitle":"图像属性","url":"URL:","createLinkTitle":"链接属性","newWindow":"New Window","topWindow":"Topmost Window","target":"Target:","parentWindow":"Parent Window","currentWindow":"Current Window"})
\ No newline at end of file
+({"text":"描述:","insertImageTitle":"图像属性","set":"设置","newWindow":"新窗口","topWindow":"最顶部窗口","target":"目标:","createLinkTitle":"链接属性","parentWindow":"父窗口","currentWindow":"当前窗口","url":"URL:"})
\ No newline at end of file
diff --git a/dijit/_editor/nls/zh/commands.js b/dijit/_editor/nls/zh/commands.js
index 4f26d0f..43d29c8 100644
--- a/dijit/_editor/nls/zh/commands.js
+++ b/dijit/_editor/nls/zh/commands.js
@@ -1 +1 @@
-({"removeFormat":"除去格式","copy":"拷贝","paste":"粘贴","selectAll":"全选","insertOrderedList":"编号列表","insertTable":"插入/编辑表","underline":"下划线","foreColor":"前景色","htmlToggle":"HTML 源代码","formatBlock":"段落样式","insertHorizontalRule":"水平线","delete":"删除","insertUnorderedList":"符号列表","tableProp":"表属性","insertImage":"插入图像","superscript":"上标","subscript":"下标","createLink":"创建链接","undo":"撤销","italic":"斜体","fontName":"字体名称","justifyLeft":"左对齐","unlink":"除去链接","toggleTableBorder":"切换表边框","fontSize":"字体大小","s [...]
\ No newline at end of file
+({"removeFormat":"除去格式","copy":"复制","paste":"粘贴","selectAll":"全选","insertOrderedList":"编号列表","insertTable":"插入/编辑表","print":"打印","underline":"下划线","foreColor":"前景色","htmlToggle":"HTML 源代码","formatBlock":"段落样式","newPage":"新建页面","insertHorizontalRule":"水平线","delete":"删除","insertUnorderedList":"符号列表","tableProp":"表属性","insertImage":"插入图像","superscript":"上标","subscript":"下标","createLink":"创建链接","undo":"撤销","fullScreen":"切换全屏","italic":"斜体","fontName":"字体名称","justifyLeft":"左对齐","unlink":"除去链接 [...]
\ No newline at end of file
diff --git a/dijit/dijit-all.js b/dijit/dijit-all.js
index 7a4cc42..6ed88f1 100644
--- a/dijit/dijit-all.js
+++ b/dijit/dijit-all.js
@@ -13,4 +13,4 @@
 	for documentation and information on getting the source.
 */
 
-if(!dojo._hasResource["dojo.colors"]){dojo._hasResource["dojo.colors"]=true;dojo.provide("dojo.colors");(function(){var _1=function(m1,m2,h){if(h<0){++h;}if(h>1){--h;}var h6=6*h;if(h6<1){return m1+(m2-m1)*h6;}if(2*h<1){return m2;}if(3*h<2){return m1+(m2-m1)*(2/3-h)*6;}return m1;};dojo.colorFromRgb=function(_2,_3){var m=_2.toLowerCase().match(/^(rgba?|hsla?)\(([\s\.\-,%0-9]+)\)/);if(m){var c=m[2].split(/\s*,\s*/),l=c.length,t=m[1],a;if((t=="rgb"&&l==3)||(t=="rgba"&&l==4)){var r=c[0];if(r. [...]
+if(!dojo._hasResource["dojo.colors"]){dojo._hasResource["dojo.colors"]=true;dojo.provide("dojo.colors");(function(){var _1=function(m1,m2,h){if(h<0){++h;}if(h>1){--h;}var h6=6*h;if(h6<1){return m1+(m2-m1)*h6;}if(2*h<1){return m2;}if(3*h<2){return m1+(m2-m1)*(2/3-h)*6;}return m1;};dojo.colorFromRgb=function(_2,_3){var m=_2.toLowerCase().match(/^(rgba?|hsla?)\(([\s\.\-,%0-9]+)\)/);if(m){var c=m[2].split(/\s*,\s*/),l=c.length,t=m[1],a;if((t=="rgb"&&l==3)||(t=="rgba"&&l==4)){var r=c[0];if(r. [...]
diff --git a/dijit/dijit-all.js.uncompressed.js b/dijit/dijit-all.js.uncompressed.js
index 32c4ae8..661dc70 100644
--- a/dijit/dijit-all.js.uncompressed.js
+++ b/dijit/dijit-all.js.uncompressed.js
@@ -949,6 +949,8 @@ if(!dojo._hasResource["dojo.dnd.common"]){ //_hasResource checks added by build.
 dojo._hasResource["dojo.dnd.common"] = true;
 dojo.provide("dojo.dnd.common");
 
+dojo.dnd.getCopyKeyState = dojo.isCopyKeyPressed;
+
 dojo.dnd._uniqueId = 0;
 dojo.dnd.getUniqueId = function(){
 	// summary:
@@ -4221,7 +4223,10 @@ dojo.declare(
 				wasPlaying = true;
 				this._fadeOut.stop();
 			}
-			if(this.open || wasPlaying){
+			
+			// Hide the underlay, unless the underlay widget has already been destroyed
+			// because we are being called during page unload (when all widgets are destroyed)
+			if((this.open || wasPlaying) && !dijit._underlay._destroyed){
 				dijit._underlay.hide();
 			}
 			if(this._moveable){
@@ -6750,6 +6755,7 @@ dojo.declare("dijit._editor.RichText", dijit._Widget, {
 		//see comments in placeCursorAtEnd
 		var isvalid=false;
 		if(dojo.isMoz){
+			// TODO:  Is this branch even necessary?
 			var first=this.editNode.firstChild;
 			while(first){
 				if(first.nodeType == 3){
@@ -6760,7 +6766,14 @@ dojo.declare("dijit._editor.RichText", dijit._Widget, {
 					}
 				}else if(first.nodeType == 1){
 					isvalid=true;
-					this._sCall("selectElementChildren", [ first ]);
+					var tg = first.tagName ? first.tagName.toLowerCase() : "";
+					// Collapse before childless tags.
+					if(/br|input|img|base|meta|area|basefont/.test(tg)){
+						this._sCall("selectElement", [ first ]);
+					}else{
+						// Collapse inside tags with children.
+						this._sCall("selectElementChildren", [ first ]);
+					}
 					break;
 				}
 				first = first.nextSibling;
@@ -18635,9 +18648,12 @@ dojo.declare(
 				this._picker.attr('value', this.attr('value') || new this.dateClassObj());
 			}
 			if(!this._opened){
+				// Open drop down.  Align left sides of input box and drop down, even in RTL mode,
+				// otherwise positioning thrown off when the drop down width is changed in marginBox call below (#10676)
 				dijit.popup.open({
 					parent: this,
 					popup: this._picker,
+					orient: {'BL':'TL', 'TL':'BL'},
 					around: this.domNode,
 					onCancel: dojo.hitch(this, this._close),
 					onClose: function(){ textBox._opened=false; }
@@ -24049,8 +24065,11 @@ dojo.declare("dijit.layout._TabContainerBase",
 	layout: function(){
 		// Overrides StackContainer.layout().
 		// Configure the content pane to take up all the space except for where the tabs are
+
 		if(!this._contentBox || typeof(this._contentBox.l) == "undefined"){return;}
 
+		var sc = this.selectedChildWidget;
+
 		if(this.doLayout){
 			// position and size the titles and the container node
 			var titleAlign = this.tabPosition.replace(/-h/, "");
@@ -24068,10 +24087,8 @@ dojo.declare("dijit.layout._TabContainerBase",
 			// children[2] is the margin-box size of this.containerNode, set by layoutChildren() call above
 			this._containerContentBox = dijit.layout.marginBox2contentBox(this.containerNode, children[2]);
 
-			if(this.selectedChildWidget){
-				if(this.selectedChildWidget.resize){
-					this.selectedChildWidget.resize(this._containerContentBox);
-				}
+			if(sc && sc.resize){
+				sc.resize(this._containerContentBox);
 			}
 		}else{
 			// just layout the tab controller, so it can position left/right buttons etc.
@@ -24079,8 +24096,10 @@ dojo.declare("dijit.layout._TabContainerBase",
 				this.tablist.resize({w: dojo.contentBox(this.domNode).w});
 			}
 
-			// and call resize() on the pane just to tell it that it's been made visible
-			this.selectedChildWidget.resize();
+			// and call resize() on the selected pane just to tell it that it's been made visible
+			if(sc && sc.resize){
+				sc.resize();
+			}
 		}
 	},
 
@@ -24494,7 +24513,7 @@ dojo.declare("dijit.layout.ScrollingTabController",
 		//		Returns the current scroll of the tabs where 0 means
 		//		"scrolled all the way to the left" and some positive number, based on #
 		//		of pixels of possible scroll (ex: 1000) means "scrolled all the way to the right"
-		var sl = (this.isLeftToRight() || dojo.isIE < 8) ? this.scrollNode.scrollLeft :
+		var sl = (this.isLeftToRight() || dojo.isIE < 8 || dojo.isQuirks || dojo.isWebKit) ? this.scrollNode.scrollLeft :
 				dojo.style(this.containerNode, "width") - dojo.style(this.scrollNode, "width")
 					 + (dojo.isIE == 8 ? -1 : 1) * this.scrollNode.scrollLeft;
 		return sl;
@@ -24508,7 +24527,7 @@ dojo.declare("dijit.layout.ScrollingTabController",
 		//		to achieve that scroll.
 		//
 		//		This method is to adjust for RTL funniness in various browsers and versions.
-		if(this.isLeftToRight() || dojo.isIE < 8){
+		if(this.isLeftToRight() || dojo.isIE < 8 || dojo.isQuirks || dojo.isWebKit){
 			return val;
 		}else{
 			var maxScroll = dojo.style(this.containerNode, "width") - dojo.style(this.scrollNode, "width");
@@ -24530,18 +24549,9 @@ dojo.declare("dijit.layout.ScrollingTabController",
 			var sl = this._getScroll();
 
 			if(sl > node.offsetLeft ||
-				sl + dojo.style(this.scrollNode, "width") <
-				node.offsetLeft + dojo.style(node, "width")){
-
-				var anim = this.createSmoothScroll();
-				// use dojo.connect() rather than this.connect() because the animation will soon be
-				// garbage collected and there's no reason to leave a reference to the connection in this._connects[]
-				dojo.connect(anim, "onEnd", function(){
-					tab.onClick(null);
-				});
-				anim.play();
-			}else{
-				tab.onClick(null);
+					sl + dojo.style(this.scrollNode, "width") <
+					node.offsetLeft + dojo.style(node, "width")){
+				this.createSmoothScroll().play();
 			}
 		}
 
@@ -24886,4 +24896,4 @@ dijit["dijit-all"] = {
 }
 
 
-dojo.i18n._preloadLocalizations("dijit.nls.dijit-all", ["ROOT","ar","ca","cs","da","de","de-de","el","en","en-gb","en-us","es","es-es","fi","fi-fi","fr","fr-fr","he","he-il","hu","it","it-it","ja","ja-jp","ko","ko-kr","nl","nl-nl","no","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);
+dojo.i18n._preloadLocalizations("dijit.nls.dijit-all", ["ROOT","ar","ca","cs","da","de","de-de","el","en","en-gb","en-us","es","es-es","fi","fi-fi","fr","fr-fr","he","he-il","hu","it","it-it","ja","ja-jp","ko","ko-kr","nb","nl","nl-nl","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);
diff --git a/dijit/dijit.js b/dijit/dijit.js
index bcbf8c4..a4b0313 100644
--- a/dijit/dijit.js
+++ b/dijit/dijit.js
@@ -13,4 +13,4 @@
 	for documentation and information on getting the source.
 */
 
-if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0;},add:function(_1){if(this._hash[_1.id]){throw new Error("Tried to register widget with id=="+_1.id+" but that id is already registered");}this._hash[_1.id]=_1;this.length++;},remove:function(id){if(this._hash[id]){delete this._hash[id];this.length--;}},forEach:function(_2,_3 [...]
+if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0;},add:function(_1){if(this._hash[_1.id]){throw new Error("Tried to register widget with id=="+_1.id+" but that id is already registered");}this._hash[_1.id]=_1;this.length++;},remove:function(id){if(this._hash[id]){delete this._hash[id];this.length--;}},forEach:function(_2,_3 [...]
diff --git a/dijit/dijit.js.uncompressed.js b/dijit/dijit.js.uncompressed.js
index 0eb99c5..17711f7 100644
--- a/dijit/dijit.js.uncompressed.js
+++ b/dijit/dijit.js.uncompressed.js
@@ -245,7 +245,7 @@ dijit.getUniqueId = function(/*String*/widgetType){
 			(widgetType in dijit._widgetTypeCtr ?
 				++dijit._widgetTypeCtr[widgetType] : dijit._widgetTypeCtr[widgetType] = 0);
 	}while(dijit.byId(id));
-	return id; // String
+	return dijit._scopeName == "dijit" ? id : dijit._scopeName + "_" + id; // String
 };
 
 dijit.findWidgets = function(/*DomNode*/ root){
@@ -371,9 +371,16 @@ dijit.isTabNavigable = function(/*Element*/elem){
 						body = doc && doc.body;
 					return body && body.contentEditable == 'true';
 				}else{
-					doc = elem.contentWindow.document;
-					body = doc && doc.body;
-					return body && body.firstChild && body.firstChild.contentEditable == 'true';
+					// contentWindow.document isn't accessible within IE7/8
+					// if the iframe.src points to a foreign url and this
+					// page contains an element, that could get focus
+					try{
+						doc = elem.contentWindow.document;
+						body = doc && doc.body;
+						return body && body.firstChild && body.firstChild.contentEditable == 'true';
+					}catch(e){
+						return false;
+					}
 				}
 			default:
 				return elem.contentEditable == 'true';
diff --git a/dijit/form/_DateTimeTextBox.js b/dijit/form/_DateTimeTextBox.js
index fe76c2f..c4c55ae 100644
--- a/dijit/form/_DateTimeTextBox.js
+++ b/dijit/form/_DateTimeTextBox.js
@@ -83,7 +83,7 @@ return _14&&(_14.min&&(_13(_14.min,_12,_f._selector)>0)||(_14.max&&_13(_14.max,_
 this._picker.attr("value",this.attr("value")||new this.dateClassObj());
 }
 if(!this._opened){
-dijit.popup.open({parent:this,popup:this._picker,around:this.domNode,onCancel:dojo.hitch(this,this._close),onClose:function(){
+dijit.popup.open({parent:this,popup:this._picker,orient:{"BL":"TL","TL":"BL"},around:this.domNode,onCancel:dojo.hitch(this,this._close),onClose:function(){
 _f._opened=false;
 }});
 this._opened=true;
diff --git a/dijit/layout/ScrollingTabController.js b/dijit/layout/ScrollingTabController.js
index 61714c5..d97545c 100644
--- a/dijit/layout/ScrollingTabController.js
+++ b/dijit/layout/ScrollingTabController.js
@@ -107,10 +107,10 @@ w.scrollLeft=sl;
 }
 this._setButtonClass(this._getScroll());
 },_getScroll:function(){
-var sl=(this.isLeftToRight()||dojo.isIE<8)?this.scrollNode.scrollLeft:dojo.style(this.containerNode,"width")-dojo.style(this.scrollNode,"width")+(dojo.isIE==8?-1:1)*this.scrollNode.scrollLeft;
+var sl=(this.isLeftToRight()||dojo.isIE<8||dojo.isQuirks||dojo.isWebKit)?this.scrollNode.scrollLeft:dojo.style(this.containerNode,"width")-dojo.style(this.scrollNode,"width")+(dojo.isIE==8?-1:1)*this.scrollNode.scrollLeft;
 return sl;
 },_convertToScrollLeft:function(val){
-if(this.isLeftToRight()||dojo.isIE<8){
+if(this.isLeftToRight()||dojo.isIE<8||dojo.isQuirks||dojo.isWebKit){
 return val;
 }else{
 var _11=dojo.style(this.containerNode,"width")-dojo.style(this.scrollNode,"width");
@@ -126,51 +126,45 @@ if(_13!=this._selectedTab){
 this._selectedTab=_13;
 var sl=this._getScroll();
 if(sl>_13.offsetLeft||sl+dojo.style(this.scrollNode,"width")<_13.offsetLeft+dojo.style(_13,"width")){
-var _14=this.createSmoothScroll();
-dojo.connect(_14,"onEnd",function(){
-tab.onClick(null);
-});
-_14.play();
-}else{
-tab.onClick(null);
+this.createSmoothScroll().play();
 }
 }
 this.inherited(arguments);
 },_getScrollBounds:function(){
-var _15=this.getChildren(),_16=dojo.style(this.scrollNode,"width"),_17=dojo.style(this.containerNode,"width"),_18=_17-_16,_19=this._getTabsWidth();
-if(_15.length&&_19>_16){
-return {min:this.isLeftToRight()?0:_15[_15.length-1].domNode.offsetLeft,max:this.isLeftToRight()?(_15[_15.length-1].domNode.offsetLeft+dojo.style(_15[_15.length-1].domNode,"width"))-_16:_18};
+var _14=this.getChildren(),_15=dojo.style(this.scrollNode,"width"),_16=dojo.style(this.containerNode,"width"),_17=_16-_15,_18=this._getTabsWidth();
+if(_14.length&&_18>_15){
+return {min:this.isLeftToRight()?0:_14[_14.length-1].domNode.offsetLeft,max:this.isLeftToRight()?(_14[_14.length-1].domNode.offsetLeft+dojo.style(_14[_14.length-1].domNode,"width"))-_15:_17};
 }else{
-var _1a=this.isLeftToRight()?0:_18;
-return {min:_1a,max:_1a};
+var _19=this.isLeftToRight()?0:_17;
+return {min:_19,max:_19};
 }
 },_getScrollForSelectedTab:function(){
-var w=this.scrollNode,n=this._selectedTab,_1b=dojo.style(this.scrollNode,"width"),_1c=this._getScrollBounds();
-var pos=(n.offsetLeft+dojo.style(n,"width")/2)-_1b/2;
-pos=Math.min(Math.max(pos,_1c.min),_1c.max);
+var w=this.scrollNode,n=this._selectedTab,_1a=dojo.style(this.scrollNode,"width"),_1b=this._getScrollBounds();
+var pos=(n.offsetLeft+dojo.style(n,"width")/2)-_1a/2;
+pos=Math.min(Math.max(pos,_1b.min),_1b.max);
 return pos;
 },createSmoothScroll:function(x){
 if(arguments.length>0){
-var _1d=this._getScrollBounds();
-x=Math.min(Math.max(x,_1d.min),_1d.max);
+var _1c=this._getScrollBounds();
+x=Math.min(Math.max(x,_1c.min),_1c.max);
 }else{
 x=this._getScrollForSelectedTab();
 }
 if(this._anim&&this._anim.status()=="playing"){
 this._anim.stop();
 }
-var _1e=this,w=this.scrollNode,_1f=new dojo._Animation({beforeBegin:function(){
+var _1d=this,w=this.scrollNode,_1e=new dojo._Animation({beforeBegin:function(){
 if(this.curve){
 delete this.curve;
 }
-var _20=w.scrollLeft,_21=_1e._convertToScrollLeft(x);
-_1f.curve=new dojo._Line(_20,_21);
+var _1f=w.scrollLeft,_20=_1d._convertToScrollLeft(x);
+_1e.curve=new dojo._Line(_1f,_20);
 },onAnimate:function(val){
 w.scrollLeft=val;
 }});
-this._anim=_1f;
+this._anim=_1e;
 this._setButtonClass(x);
-return _1f;
+return _1e;
 },_getBtnNode:function(e){
 var n=e.target;
 while(n&&!dojo.hasClass(n,"tabStripButton")){
@@ -181,19 +175,19 @@ return n;
 this.doSlide(1,this._getBtnNode(e));
 },doSlideLeft:function(e){
 this.doSlide(-1,this._getBtnNode(e));
-},doSlide:function(_22,_23){
-if(_23&&dojo.hasClass(_23,"dijitTabBtnDisabled")){
+},doSlide:function(_21,_22){
+if(_22&&dojo.hasClass(_22,"dijitTabBtnDisabled")){
 return;
 }
-var _24=dojo.style(this.scrollNode,"width");
-var d=(_24*0.75)*_22;
+var _23=dojo.style(this.scrollNode,"width");
+var d=(_23*0.75)*_21;
 var to=this._getScroll()+d;
 this._setButtonClass(to);
 this.createSmoothScroll(to).play();
-},_setButtonClass:function(_25){
-var cls="dijitTabBtnDisabled",_26=this._getScrollBounds();
-dojo.toggleClass(this._leftBtn.domNode,cls,_25<=_26.min);
-dojo.toggleClass(this._rightBtn.domNode,cls,_25>=_26.max);
+},_setButtonClass:function(_24){
+var cls="dijitTabBtnDisabled",_25=this._getScrollBounds();
+dojo.toggleClass(this._leftBtn.domNode,cls,_24<=_25.min);
+dojo.toggleClass(this._rightBtn.domNode,cls,_24>=_25.max);
 }});
 dojo.declare("dijit.layout._ScrollingTabControllerButton",dijit.form.Button,{baseClass:"dijitTab",buttonType:"",buttonClass:"",tabPosition:"top",templateString:dojo.cache("dijit.layout","templates/_ScrollingTabControllerButton.html","<div id=\"${id}-${buttonType}\" class=\"tabStripButton dijitTab ${buttonClass} tabStripButton-${tabPosition}\"\n\t\tdojoAttachEvent=\"onclick:_onButtonClick,onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse\">\n\t<div role=\"presentation\" wai [...]
 }
diff --git a/dijit/layout/_TabContainerBase.js b/dijit/layout/_TabContainerBase.js
index a319ff5..255fdfb 100644
--- a/dijit/layout/_TabContainerBase.js
+++ b/dijit/layout/_TabContainerBase.js
@@ -41,22 +41,23 @@ this.inherited(arguments);
 if(!this._contentBox||typeof (this._contentBox.l)=="undefined"){
 return;
 }
+var sc=this.selectedChildWidget;
 if(this.doLayout){
 var _2=this.tabPosition.replace(/-h/,"");
 this.tablist.layoutAlign=_2;
 var _3=[this.tablist,{domNode:this.tablistSpacer,layoutAlign:_2},{domNode:this.containerNode,layoutAlign:"client"}];
 dijit.layout.layoutChildren(this.domNode,this._contentBox,_3);
 this._containerContentBox=dijit.layout.marginBox2contentBox(this.containerNode,_3[2]);
-if(this.selectedChildWidget){
-if(this.selectedChildWidget.resize){
-this.selectedChildWidget.resize(this._containerContentBox);
-}
+if(sc&&sc.resize){
+sc.resize(this._containerContentBox);
 }
 }else{
 if(this.tablist.resize){
 this.tablist.resize({w:dojo.contentBox(this.domNode).w});
 }
-this.selectedChildWidget.resize();
+if(sc&&sc.resize){
+sc.resize();
+}
 }
 },destroy:function(){
 if(this.tablist){
diff --git a/dijit/nls/dijit-all_cs.js b/dijit/nls/dijit-all_cs.js
index 1974b82..e23f7e9 100644
--- a/dijit/nls/dijit-all_cs.js
+++ b/dijit/nls/dijit-all_cs.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_cs");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.cs");dojo.nls.colors.cs={"lightsteelblue":"světlá ocelová modrá","orangered":"oranžovočervená","midnightblue":"temně modrá","cadetblue":"šedomodrá","seashell":"lasturová","slategrey":"břidlicová šedá","coral":"korálová červená","darkturquoise":"tmavě tyrkysová","antiquewhite":"krémově bílá","mediumspringgreen":"střední jarní zelená","salmon":"lososová","darkgre [...]
+dojo.provide("dijit.nls.dijit-all_cs");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.cs");dojo.nls.colors.cs={"lightsteelblue":"světlá ocelová modrá","orangered":"oranžovočervená","midnightblue":"temně modrá","cadetblue":"šedomodrá","seashell":"lasturová","slategrey":"břidlicová šedá","coral":"korálová červená","darkturquoise":"tmavě tyrkysová","antiquewhite":"krémově bílá","mediumspringgreen":"střední jarní zelená","salmon":"lososová","darkgre [...]
diff --git a/dijit/nls/dijit-all_de-de.js b/dijit/nls/dijit-all_de-de.js
index 4f40ebf..940b38d 100644
--- a/dijit/nls/dijit-all_de-de.js
+++ b/dijit/nls/dijit-all_de-de.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_de-de");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.de_de");dojo.nls.colors.de_de={"lightsteelblue":"Helles Stahlblau","orangered":"Orangerot","midnightblue":"Mitternachtblau","cadetblue":"Kadettenblau","seashell":"Muschelweiß","slategrey":"Schiefergrau","coral":"Koralle","darkturquoise":"Dunkeltürkis","antiquewhite":"Antikweiß","mediumspringgreen":"Mittelfrühlingsgrün","salmon":"Lachs","darkgrey":"Dunkelgrau [...]
+dojo.provide("dijit.nls.dijit-all_de-de");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.de_de");dojo.nls.colors.de_de={"lightsteelblue":"Helles Stahlblau","orangered":"Orangerot","midnightblue":"Mitternachtblau","cadetblue":"Kadettenblau","seashell":"Muschelweiß","slategrey":"Schiefergrau","coral":"Koralle","darkturquoise":"Dunkeltürkis","antiquewhite":"Antikweiß","mediumspringgreen":"Mittelfrühlingsgrün","salmon":"Lachs","darkgrey":"Dunkelgrau [...]
diff --git a/dijit/nls/dijit-all_de.js b/dijit/nls/dijit-all_de.js
index a8fdf33..aaeeaae 100644
--- a/dijit/nls/dijit-all_de.js
+++ b/dijit/nls/dijit-all_de.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_de");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.de");dojo.nls.colors.de={"lightsteelblue":"Helles Stahlblau","orangered":"Orangerot","midnightblue":"Mitternachtblau","cadetblue":"Kadettenblau","seashell":"Muschelweiß","slategrey":"Schiefergrau","coral":"Koralle","darkturquoise":"Dunkeltürkis","antiquewhite":"Antikweiß","mediumspringgreen":"Mittelfrühlingsgrün","salmon":"Lachs","darkgrey":"Dunkelgrau","ivory" [...]
+dojo.provide("dijit.nls.dijit-all_de");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.de");dojo.nls.colors.de={"lightsteelblue":"Helles Stahlblau","orangered":"Orangerot","midnightblue":"Mitternachtblau","cadetblue":"Kadettenblau","seashell":"Muschelweiß","slategrey":"Schiefergrau","coral":"Koralle","darkturquoise":"Dunkeltürkis","antiquewhite":"Antikweiß","mediumspringgreen":"Mittelfrühlingsgrün","salmon":"Lachs","darkgrey":"Dunkelgrau","ivory" [...]
diff --git a/dijit/nls/dijit-all_es-es.js b/dijit/nls/dijit-all_es-es.js
index 722228a..e0eb71a 100644
--- a/dijit/nls/dijit-all_es-es.js
+++ b/dijit/nls/dijit-all_es-es.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_es-es");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.es_es");dojo.nls.colors.es_es={"lightsteelblue":"azul acero claro","orangered":"rojo anaranjado","midnightblue":"azul medianoche","cadetblue":"azul cadete","seashell":"blanco marfil","slategrey":"gris pizarra","coral":"coral","darkturquoise":"turquesa oscuro","antiquewhite":"blanco antiguo","mediumspringgreen":"verde primavera medio","salmon":"salmón","darkg [...]
+dojo.provide("dijit.nls.dijit-all_es-es");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.es_es");dojo.nls.colors.es_es={"lightsteelblue":"azul acero claro","orangered":"rojo anaranjado","midnightblue":"azul medianoche","cadetblue":"azul cadete","seashell":"blanco marfil","slategrey":"gris pizarra","coral":"coral","darkturquoise":"turquesa oscuro","antiquewhite":"blanco antiguo","mediumspringgreen":"verde primavera medio","salmon":"salmón","darkg [...]
diff --git a/dijit/nls/dijit-all_es.js b/dijit/nls/dijit-all_es.js
index bc5064a..ff7f2f1 100644
--- a/dijit/nls/dijit-all_es.js
+++ b/dijit/nls/dijit-all_es.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_es");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.es");dojo.nls.colors.es={"lightsteelblue":"azul acero claro","orangered":"rojo anaranjado","midnightblue":"azul medianoche","cadetblue":"azul cadete","seashell":"blanco marfil","slategrey":"gris pizarra","coral":"coral","darkturquoise":"turquesa oscuro","antiquewhite":"blanco antiguo","mediumspringgreen":"verde primavera medio","salmon":"salmón","darkgrey":"gri [...]
+dojo.provide("dijit.nls.dijit-all_es");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.es");dojo.nls.colors.es={"lightsteelblue":"azul acero claro","orangered":"rojo anaranjado","midnightblue":"azul medianoche","cadetblue":"azul cadete","seashell":"blanco marfil","slategrey":"gris pizarra","coral":"coral","darkturquoise":"turquesa oscuro","antiquewhite":"blanco antiguo","mediumspringgreen":"verde primavera medio","salmon":"salmón","darkgrey":"gri [...]
diff --git a/dijit/nls/dijit-all_fr-fr.js b/dijit/nls/dijit-all_fr-fr.js
index f0b195b..c992592 100644
--- a/dijit/nls/dijit-all_fr-fr.js
+++ b/dijit/nls/dijit-all_fr-fr.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_fr-fr");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.fr_fr");dojo.nls.colors.fr_fr={"lightsteelblue":"bleu acier clair","orangered":"rouge orangé","midnightblue":"bleu nuit","cadetblue":"bleu pétrole","seashell":"coquillage","slategrey":"gris ardoise","coral":"corail","darkturquoise":"turquoise foncé","antiquewhite":"blanc antique","mediumspringgreen":"vert printemps moyen","salmon":"saumon","darkgrey":"gris f [...]
+dojo.provide("dijit.nls.dijit-all_fr-fr");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.fr_fr");dojo.nls.colors.fr_fr={"lightsteelblue":"bleu acier clair","orangered":"rouge orangé","midnightblue":"bleu nuit","cadetblue":"bleu pétrole","seashell":"coquillage","slategrey":"gris ardoise","coral":"corail","darkturquoise":"turquoise foncé","antiquewhite":"blanc antique","mediumspringgreen":"vert printemps moyen","salmon":"saumon","darkgrey":"gris f [...]
diff --git a/dijit/nls/dijit-all_fr.js b/dijit/nls/dijit-all_fr.js
index 0156343..c9afe60 100644
--- a/dijit/nls/dijit-all_fr.js
+++ b/dijit/nls/dijit-all_fr.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_fr");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.fr");dojo.nls.colors.fr={"lightsteelblue":"bleu acier clair","orangered":"rouge orangé","midnightblue":"bleu nuit","cadetblue":"bleu pétrole","seashell":"coquillage","slategrey":"gris ardoise","coral":"corail","darkturquoise":"turquoise foncé","antiquewhite":"blanc antique","mediumspringgreen":"vert printemps moyen","salmon":"saumon","darkgrey":"gris foncé","iv [...]
+dojo.provide("dijit.nls.dijit-all_fr");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.fr");dojo.nls.colors.fr={"lightsteelblue":"bleu acier clair","orangered":"rouge orangé","midnightblue":"bleu nuit","cadetblue":"bleu pétrole","seashell":"coquillage","slategrey":"gris ardoise","coral":"corail","darkturquoise":"turquoise foncé","antiquewhite":"blanc antique","mediumspringgreen":"vert printemps moyen","salmon":"saumon","darkgrey":"gris foncé","iv [...]
diff --git a/dijit/nls/dijit-all_hu.js b/dijit/nls/dijit-all_hu.js
index f91f8f1..10e395f 100644
--- a/dijit/nls/dijit-all_hu.js
+++ b/dijit/nls/dijit-all_hu.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_hu");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.hu");dojo.nls.colors.hu={"lightsteelblue":"világos acélkék","orangered":"narancsvörös","midnightblue":"éjkék","cadetblue":"kadétkék","seashell":"kagyló","slategrey":"palaszürke","coral":"korall","darkturquoise":"sötét türkizkék","antiquewhite":"antik fehér","mediumspringgreen":"közepes tavaszzöld","salmon":"lazacszín","darkgrey":"sötétszürke","ivory":"elefántcs [...]
+dojo.provide("dijit.nls.dijit-all_hu");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.hu");dojo.nls.colors.hu={"lightsteelblue":"világos acélkék","orangered":"narancsvörös","midnightblue":"éjkék","cadetblue":"kadétkék","seashell":"kagyló","slategrey":"palaszürke","coral":"korall","darkturquoise":"sötét türkizkék","antiquewhite":"antik fehér","mediumspringgreen":"közepes tavaszzöld","salmon":"lazacszín","darkgrey":"sötétszürke","ivory":"elefántcs [...]
diff --git a/dijit/nls/dijit-all_it-it.js b/dijit/nls/dijit-all_it-it.js
index bf110ce..5321ffd 100644
--- a/dijit/nls/dijit-all_it-it.js
+++ b/dijit/nls/dijit-all_it-it.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_it-it");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.it_it");dojo.nls.colors.it_it={"lightsteelblue":"blu acciao chiaro","orangered":"vermiglio","midnightblue":"blu melanzana scuro","cadetblue":"verde acqua","seashell":"sabbia rosa","slategrey":"grigio ardesia","coral":"corallo","darkturquoise":"turchese scuro","antiquewhite":"bianco antico","mediumspringgreen":"verde primavera medio","salmon":"salmone","darkg [...]
+dojo.provide("dijit.nls.dijit-all_it-it");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.it_it");dojo.nls.colors.it_it={"lightsteelblue":"blu acciao chiaro","orangered":"vermiglio","midnightblue":"blu melanzana scuro","cadetblue":"verde acqua","seashell":"sabbia rosa","slategrey":"grigio ardesia","coral":"corallo","darkturquoise":"turchese scuro","antiquewhite":"bianco antico","mediumspringgreen":"verde primavera medio","salmon":"salmone","darkg [...]
diff --git a/dijit/nls/dijit-all_it.js b/dijit/nls/dijit-all_it.js
index 4f4a4b5..ec68ba4 100644
--- a/dijit/nls/dijit-all_it.js
+++ b/dijit/nls/dijit-all_it.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_it");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.it");dojo.nls.colors.it={"lightsteelblue":"blu acciao chiaro","orangered":"vermiglio","midnightblue":"blu melanzana scuro","cadetblue":"verde acqua","seashell":"sabbia rosa","slategrey":"grigio ardesia","coral":"corallo","darkturquoise":"turchese scuro","antiquewhite":"bianco antico","mediumspringgreen":"verde primavera medio","salmon":"salmone","darkgrey":"gri [...]
+dojo.provide("dijit.nls.dijit-all_it");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.it");dojo.nls.colors.it={"lightsteelblue":"blu acciao chiaro","orangered":"vermiglio","midnightblue":"blu melanzana scuro","cadetblue":"verde acqua","seashell":"sabbia rosa","slategrey":"grigio ardesia","coral":"corallo","darkturquoise":"turchese scuro","antiquewhite":"bianco antico","mediumspringgreen":"verde primavera medio","salmon":"salmone","darkgrey":"gri [...]
diff --git a/dijit/nls/dijit-all_ja-jp.js b/dijit/nls/dijit-all_ja-jp.js
index 2334ba2..44ed3d7 100644
--- a/dijit/nls/dijit-all_ja-jp.js
+++ b/dijit/nls/dijit-all_ja-jp.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_ja-jp");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ja_jp");dojo.nls.colors.ja_jp={"lightsteelblue":"ライト・スチール・ブルー","orangered":"オレンジ・レッド","midnightblue":"ミッドナイト・ブルー","cadetblue":"くすんだ青","seashell":"シーシェル","slategrey":"スレート・グレイ","coral":"珊瑚","darkturquoise":"ダーク・ターコイズ","antiquewhite":"アンティーク・ホワイト","mediumspringgreen":"ミディアム・スプリング・グリーン","salmon":"サーモン","darkgrey":"ダーク・グレイ","ivory":"アイボリー","greenyellow":"緑黄色","m [...]
+dojo.provide("dijit.nls.dijit-all_ja-jp");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ja_jp");dojo.nls.colors.ja_jp={"lightsteelblue":"ライト・スチール・ブルー","orangered":"オレンジ・レッド","midnightblue":"ミッドナイト・ブルー","cadetblue":"くすんだ青","seashell":"シーシェル","slategrey":"スレート・グレイ","coral":"珊瑚","darkturquoise":"ダーク・ターコイズ","antiquewhite":"アンティーク・ホワイト","mediumspringgreen":"ミディアム・スプリング・グリーン","salmon":"サーモン","darkgrey":"ダーク・グレイ","ivory":"アイボリー","greenyellow":"緑黄色","m [...]
diff --git a/dijit/nls/dijit-all_ja.js b/dijit/nls/dijit-all_ja.js
index 86790b0..913c2bb 100644
--- a/dijit/nls/dijit-all_ja.js
+++ b/dijit/nls/dijit-all_ja.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_ja");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ja");dojo.nls.colors.ja={"lightsteelblue":"ライト・スチール・ブルー","orangered":"オレンジ・レッド","midnightblue":"ミッドナイト・ブルー","cadetblue":"くすんだ青","seashell":"シーシェル","slategrey":"スレート・グレイ","coral":"珊瑚","darkturquoise":"ダーク・ターコイズ","antiquewhite":"アンティーク・ホワイト","mediumspringgreen":"ミディアム・スプリング・グリーン","salmon":"サーモン","darkgrey":"ダーク・グレイ","ivory":"アイボリー","greenyellow":"緑黄色","mistyrose" [...]
+dojo.provide("dijit.nls.dijit-all_ja");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ja");dojo.nls.colors.ja={"lightsteelblue":"ライト・スチール・ブルー","orangered":"オレンジ・レッド","midnightblue":"ミッドナイト・ブルー","cadetblue":"くすんだ青","seashell":"シーシェル","slategrey":"スレート・グレイ","coral":"珊瑚","darkturquoise":"ダーク・ターコイズ","antiquewhite":"アンティーク・ホワイト","mediumspringgreen":"ミディアム・スプリング・グリーン","salmon":"サーモン","darkgrey":"ダーク・グレイ","ivory":"アイボリー","greenyellow":"緑黄色","mistyrose" [...]
diff --git a/dijit/nls/dijit-all_ko-kr.js b/dijit/nls/dijit-all_ko-kr.js
index 6e3df85..f8c8a2a 100644
--- a/dijit/nls/dijit-all_ko-kr.js
+++ b/dijit/nls/dijit-all_ko-kr.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_ko-kr");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ko_kr");dojo.nls.colors.ko_kr={"lightsteelblue":"라이트 스틸 블루(light steel blue)","orangered":"오렌지 레드(orange red)","midnightblue":"미드나잇 블루(midnight blue)","cadetblue":"카뎃 블루(cadet blue)","seashell":"씨쉘(seashell)","slategrey":"슬레이트 그레이(slate gray)","coral":"코랄(coral)","darkturquoise":"다크 터콰즈(dark turquoise)","antiquewhite":"앤틱 화이트(antique white)","mediumspringgre [...]
+dojo.provide("dijit.nls.dijit-all_ko-kr");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ko_kr");dojo.nls.colors.ko_kr={"lightsteelblue":"라이트 스틸 블루(light steel blue)","orangered":"오렌지 레드(orange red)","midnightblue":"미드나잇 블루(midnight blue)","cadetblue":"카뎃 블루(cadet blue)","seashell":"씨쉘(seashell)","slategrey":"슬레이트 그레이(slate gray)","coral":"코랄(coral)","darkturquoise":"다크 터콰즈(dark turquoise)","antiquewhite":"앤틱 화이트(antique white)","mediumspringgre [...]
diff --git a/dijit/nls/dijit-all_ko.js b/dijit/nls/dijit-all_ko.js
index d892277..910e2ff 100644
--- a/dijit/nls/dijit-all_ko.js
+++ b/dijit/nls/dijit-all_ko.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_ko");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ko");dojo.nls.colors.ko={"lightsteelblue":"라이트 스틸 블루(light steel blue)","orangered":"오렌지 레드(orange red)","midnightblue":"미드나잇 블루(midnight blue)","cadetblue":"카뎃 블루(cadet blue)","seashell":"씨쉘(seashell)","slategrey":"슬레이트 그레이(slate gray)","coral":"코랄(coral)","darkturquoise":"다크 터콰즈(dark turquoise)","antiquewhite":"앤틱 화이트(antique white)","mediumspringgreen":"미디엄  [...]
+dojo.provide("dijit.nls.dijit-all_ko");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ko");dojo.nls.colors.ko={"lightsteelblue":"라이트 스틸 블루(light steel blue)","orangered":"오렌지 레드(orange red)","midnightblue":"미드나잇 블루(midnight blue)","cadetblue":"카뎃 블루(cadet blue)","seashell":"씨쉘(seashell)","slategrey":"슬레이트 그레이(slate gray)","coral":"코랄(coral)","darkturquoise":"다크 터콰즈(dark turquoise)","antiquewhite":"앤틱 화이트(antique white)","mediumspringgreen":"미디엄  [...]
diff --git a/dijit/nls/dijit-all_nb.js b/dijit/nls/dijit-all_nb.js
new file mode 100644
index 0000000..49ac970
--- /dev/null
+++ b/dijit/nls/dijit-all_nb.js
@@ -0,0 +1 @@
+dojo.provide("dijit.nls.dijit-all_nb");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.nb");dojo.nls.colors.nb={"lightsteelblue":"lys stålblå","orangered":"rødoransje","midnightblue":"midnattsblå","cadetblue":"mørk grønnblå","seashell":"skjellhvit","slategrey":"skifergrå","coral":"korall","darkturquoise":"mørk turkis","antiquewhite":"antikk hvit","mediumspringgreen":"middels vårgrønn","salmon":"lakserosa","darkgrey":"mørk grå","ivory":"elfenbensh [...]
diff --git a/dijit/nls/dijit-all_no.js b/dijit/nls/dijit-all_no.js
deleted file mode 100644
index 8f973d6..0000000
--- a/dijit/nls/dijit-all_no.js
+++ /dev/null
@@ -1 +0,0 @@
-dojo.provide("dijit.nls.dijit-all_no");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.no");dojo.nls.colors.no={"lightsteelblue":"light steel blue","orangered":"orange red","midnightblue":"midnight blue","cadetblue":"cadet blue","seashell":"seashell","slategrey":"slate gray","coral":"coral","darkturquoise":"dark turquoise","antiquewhite":"antique white","mediumspringgreen":"medium spring green","salmon":"salmon","darkgrey":"dark gray","ivory":"iv [...]
diff --git a/dijit/nls/dijit-all_pl.js b/dijit/nls/dijit-all_pl.js
index 4628124..dba9a3b 100644
--- a/dijit/nls/dijit-all_pl.js
+++ b/dijit/nls/dijit-all_pl.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_pl");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pl");dojo.nls.colors.pl={"lightsteelblue":"jasny stalowoniebieski","orangered":"pomarańczowoczerwony","midnightblue":"ciemnogranatowy","cadetblue":"niebieskoszary","seashell":"muszla","slategrey":"łupkowy szary","coral":"koralowy","darkturquoise":"ciemnoturkusowy","antiquewhite":"biel antyczna","mediumspringgreen":"średnia wiosenna zieleń","salmon":"łososiowy", [...]
+dojo.provide("dijit.nls.dijit-all_pl");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pl");dojo.nls.colors.pl={"lightsteelblue":"jasny stalowoniebieski","orangered":"pomarańczowoczerwony","midnightblue":"ciemnogranatowy","cadetblue":"niebieskoszary","seashell":"muszla","slategrey":"łupkowy szary","coral":"koralowy","darkturquoise":"ciemnoturkusowy","antiquewhite":"biel antyczna","mediumspringgreen":"średnia wiosenna zieleń","salmon":"łososiowy", [...]
diff --git a/dijit/nls/dijit-all_pt-br.js b/dijit/nls/dijit-all_pt-br.js
index fda85fd..d448c14 100644
--- a/dijit/nls/dijit-all_pt-br.js
+++ b/dijit/nls/dijit-all_pt-br.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_pt-br");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pt_br");dojo.nls.colors.pt_br={"lightsteelblue":"azul-aço claro","orangered":"vermelho alaranjado","midnightblue":"azul meia-noite","cadetblue":"azul cadet","seashell":"seashell","slategrey":"cinza-ardósia","coral":"coral","darkturquoise":"turquesa escuro","antiquewhite":"branco antigo","mediumspringgreen":"verde-primavera médio","salmon":"salmão","darkgrey" [...]
+dojo.provide("dijit.nls.dijit-all_pt-br");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pt_br");dojo.nls.colors.pt_br={"lightsteelblue":"azul-aço claro","orangered":"vermelho alaranjado","midnightblue":"azul meia-noite","cadetblue":"azul cadet","seashell":"seashell","slategrey":"cinza-ardósia","coral":"coral","darkturquoise":"turquesa escuro","antiquewhite":"branco antigo","mediumspringgreen":"verde-primavera médio","salmon":"salmão","darkgrey" [...]
diff --git a/dijit/nls/dijit-all_pt-pt.js b/dijit/nls/dijit-all_pt-pt.js
index 231f26a..a3ffb19 100644
--- a/dijit/nls/dijit-all_pt-pt.js
+++ b/dijit/nls/dijit-all_pt-pt.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_pt-pt");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pt_pt");dojo.nls.colors.pt_pt={"lightsteelblue":"azul-aço claro","orangered":"vermelho alaranjado","midnightblue":"azul meia-noite","cadetblue":"azul cadete","seashell":"concha","slategrey":"cinzento ardósia","coral":"coral","darkturquoise":"turquesa escuro","antiquewhite":"branco antigo","mediumspringgreen":"verde primavera médio","salmon":"salmão","darkgre [...]
+dojo.provide("dijit.nls.dijit-all_pt-pt");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pt_pt");dojo.nls.colors.pt_pt={"lightsteelblue":"azul-aço claro","orangered":"vermelho alaranjado","midnightblue":"azul meia-noite","cadetblue":"azul cadete","seashell":"concha","slategrey":"cinzento ardósia","coral":"coral","darkturquoise":"turquesa escuro","antiquewhite":"branco antigo","mediumspringgreen":"verde primavera médio","salmon":"salmão","darkgre [...]
diff --git a/dijit/nls/dijit-all_pt.js b/dijit/nls/dijit-all_pt.js
index 77092b4..43df341 100644
--- a/dijit/nls/dijit-all_pt.js
+++ b/dijit/nls/dijit-all_pt.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_pt");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pt");dojo.nls.colors.pt={"lightsteelblue":"azul-aço claro","orangered":"vermelho alaranjado","midnightblue":"azul meia-noite","cadetblue":"azul cadet","seashell":"seashell","slategrey":"cinza-ardósia","coral":"coral","darkturquoise":"turquesa escuro","antiquewhite":"branco antigo","mediumspringgreen":"verde-primavera médio","salmon":"salmão","darkgrey":"cinza e [...]
+dojo.provide("dijit.nls.dijit-all_pt");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.pt");dojo.nls.colors.pt={"lightsteelblue":"azul-aço claro","orangered":"vermelho alaranjado","midnightblue":"azul meia-noite","cadetblue":"azul cadet","seashell":"seashell","slategrey":"cinza-ardósia","coral":"coral","darkturquoise":"turquesa escuro","antiquewhite":"branco antigo","mediumspringgreen":"verde-primavera médio","salmon":"salmão","darkgrey":"cinza e [...]
diff --git a/dijit/nls/dijit-all_ru.js b/dijit/nls/dijit-all_ru.js
index 26b4123..1a86051 100644
--- a/dijit/nls/dijit-all_ru.js
+++ b/dijit/nls/dijit-all_ru.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_ru");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ru");dojo.nls.colors.ru={"lightsteelblue":"светлый стальной","orangered":"оранжево-красный","midnightblue":"полуночно-синий","cadetblue":"серо-синий","seashell":"морская раковина","slategrey":"грифельно-серый","coral":"коралловый","darkturquoise":"темный бирюзовый","antiquewhite":"белый антик","mediumspringgreen":"нейтральный весенне-зеленый","salmon":"лососевы [...]
+dojo.provide("dijit.nls.dijit-all_ru");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.ru");dojo.nls.colors.ru={"lightsteelblue":"светлый стальной","orangered":"оранжево-красный","midnightblue":"полуночно-синий","cadetblue":"серо-синий","seashell":"морская раковина","slategrey":"грифельно-серый","coral":"коралловый","darkturquoise":"темный бирюзовый","antiquewhite":"белый антик","mediumspringgreen":"нейтральный весенне-зеленый","salmon":"лососевы [...]
diff --git a/dijit/nls/dijit-all_zh-cn.js b/dijit/nls/dijit-all_zh-cn.js
index 88cdb0f..aa00dec 100644
--- a/dijit/nls/dijit-all_zh-cn.js
+++ b/dijit/nls/dijit-all_zh-cn.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_zh-cn");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.zh_cn");dojo.nls.colors.zh_cn={"lightsteelblue":"浅钢蓝色","orangered":"橙红色","midnightblue":"深蓝色","cadetblue":"灰蓝色","seashell":"海贝色","slategrey":"灰石色","coral":"珊瑚色","darkturquoise":"深粉蓝","antiquewhite":"古董白","mediumspringgreen":"间春绿色","salmon":"橙红","darkgrey":"深灰色","ivory":"象牙色","greenyellow":"绿黄色","mistyrose":"浅玫瑰色","lightsalmon":"淡橙色","silver":"银白色","dimgrey": [...]
+dojo.provide("dijit.nls.dijit-all_zh-cn");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.zh_cn");dojo.nls.colors.zh_cn={"lightsteelblue":"浅钢蓝色","orangered":"橙红色","midnightblue":"深蓝色","cadetblue":"灰蓝色","seashell":"海贝色","slategrey":"灰石色","coral":"珊瑚色","darkturquoise":"深粉蓝","antiquewhite":"古董白","mediumspringgreen":"间春绿色","salmon":"橙红","darkgrey":"深灰色","ivory":"象牙色","greenyellow":"绿黄色","mistyrose":"浅玫瑰色","lightsalmon":"淡橙色","silver":"银白色","dimgrey": [...]
diff --git a/dijit/nls/dijit-all_zh-tw.js b/dijit/nls/dijit-all_zh-tw.js
index b2d5168..9136376 100644
--- a/dijit/nls/dijit-all_zh-tw.js
+++ b/dijit/nls/dijit-all_zh-tw.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_zh-tw");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.zh_tw");dojo.nls.colors.zh_tw={"lightsteelblue":"淡鐵藍色","orangered":"橙紅色","midnightblue":"午夜藍","cadetblue":"軍服藍","seashell":"海貝色","slategrey":"岩灰色","coral":"珊瑚紅","darkturquoise":"暗松石綠","antiquewhite":"米白色","mediumspringgreen":"中春綠色","salmon":"鮭紅色","darkgrey":"暗灰色","ivory":"象牙色","greenyellow":"綠黃色","mistyrose":"霧玫瑰色","lightsalmon":"淡鮭紅","silver":"銀色","dimgrey" [...]
+dojo.provide("dijit.nls.dijit-all_zh-tw");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.zh_tw");dojo.nls.colors.zh_tw={"lightsteelblue":"淡鐵藍色","orangered":"橙紅色","midnightblue":"午夜藍","cadetblue":"軍服藍","seashell":"海貝色","slategrey":"岩灰色","coral":"珊瑚紅","darkturquoise":"暗松石綠","antiquewhite":"米白色","mediumspringgreen":"中春綠色","salmon":"鮭紅色","darkgrey":"暗灰色","ivory":"象牙色","greenyellow":"綠黃色","mistyrose":"霧玫瑰色","lightsalmon":"淡鮭紅","silver":"銀色","dimgrey" [...]
diff --git a/dijit/nls/dijit-all_zh.js b/dijit/nls/dijit-all_zh.js
index 2bd4d39..f0517ed 100644
--- a/dijit/nls/dijit-all_zh.js
+++ b/dijit/nls/dijit-all_zh.js
@@ -1 +1 @@
-dojo.provide("dijit.nls.dijit-all_zh");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.zh");dojo.nls.colors.zh={"lightsteelblue":"浅钢蓝色","orangered":"橙红色","midnightblue":"深蓝色","cadetblue":"灰蓝色","seashell":"海贝色","slategrey":"灰石色","coral":"珊瑚色","darkturquoise":"深粉蓝","antiquewhite":"古董白","mediumspringgreen":"间春绿色","salmon":"橙红","darkgrey":"深灰色","ivory":"象牙色","greenyellow":"绿黄色","mistyrose":"浅玫瑰色","lightsalmon":"淡橙色","silver":"银白色","dimgrey":"暗灰色","or [...]
+dojo.provide("dijit.nls.dijit-all_zh");dojo.provide("dojo.nls.colors");dojo.nls.colors._built=true;dojo.provide("dojo.nls.colors.zh");dojo.nls.colors.zh={"lightsteelblue":"浅钢蓝色","orangered":"橙红色","midnightblue":"深蓝色","cadetblue":"灰蓝色","seashell":"海贝色","slategrey":"灰石色","coral":"珊瑚色","darkturquoise":"深粉蓝","antiquewhite":"古董白","mediumspringgreen":"间春绿色","salmon":"橙红","darkgrey":"深灰色","ivory":"象牙色","greenyellow":"绿黄色","mistyrose":"浅玫瑰色","lightsalmon":"淡橙色","silver":"银白色","dimgrey":"暗灰色","or [...]
diff --git a/dijit/themes/dijit_rtl.css b/dijit/themes/dijit_rtl.css
index ed887c4..8af6f2f 100644
--- a/dijit/themes/dijit_rtl.css
+++ b/dijit/themes/dijit_rtl.css
@@ -77,3 +77,6 @@
 .dijitRtl .dijitTabContainer .tabStripMenuButton {
 	float: left;
 }
+.dj_iequirks-rtl .dijitComboButton BUTTON {
+        float:left;
+}
diff --git a/dijit/themes/nihilo/nihilo_rtl.css b/dijit/themes/nihilo/nihilo_rtl.css
index 9a830c6..1dc04aa 100644
--- a/dijit/themes/nihilo/nihilo_rtl.css
+++ b/dijit/themes/nihilo/nihilo_rtl.css
@@ -78,6 +78,9 @@
 .dijitRtl .dijitTabContainer .tabStripMenuButton {
 	float: left;
 }
+.dj_iequirks-rtl .dijitComboButton BUTTON {
+        float:left;
+}
 .dijitRtl .nihilo .dijitTab {
 	margin-right:0;
 	margin-left:2px;		
diff --git a/dijit/themes/soria/soria_rtl.css b/dijit/themes/soria/soria_rtl.css
index e2ce51a..c70b13b 100644
--- a/dijit/themes/soria/soria_rtl.css
+++ b/dijit/themes/soria/soria_rtl.css
@@ -78,6 +78,9 @@
 .dijitRtl .dijitTabContainer .tabStripMenuButton {
 	float: left;
 }
+.dj_iequirks-rtl .dijitComboButton BUTTON {
+        float:left;
+}
 .dijitRtl .soria .dijitTab {
 	margin-right:0;
 	margin-left:2px;		
diff --git a/dijit/themes/tundra/tundra.css b/dijit/themes/tundra/tundra.css
index 9618d83..15fa9e4 100644
--- a/dijit/themes/tundra/tundra.css
+++ b/dijit/themes/tundra/tundra.css
@@ -3121,6 +3121,9 @@ div.dijitTabBtnDisabled, .dj_ie div.dijitTabBtnDisabled {
 .dijitRtl .dijitTabContainer .tabStripMenuButton {
 	float: left;
 }
+.dj_iequirks-rtl .dijitComboButton BUTTON {
+        float:left;
+}
 .dijitRtl .tundra .dijitCalendarDecrease {
 	background-position: -30px top;
 }
diff --git a/dijit/themes/tundra/tundra_rtl.css b/dijit/themes/tundra/tundra_rtl.css
index 9aeeeb7..f399328 100644
--- a/dijit/themes/tundra/tundra_rtl.css
+++ b/dijit/themes/tundra/tundra_rtl.css
@@ -78,6 +78,9 @@
 .dijitRtl .dijitTabContainer .tabStripMenuButton {
 	float: left;
 }
+.dj_iequirks-rtl .dijitComboButton BUTTON {
+        float:left;
+}
 .dijitRtl .tundra .dijitCalendarDecrease {
 	background-position: -30px top;
 }
diff --git a/dojo/_base/_loader/bootstrap.js b/dojo/_base/_loader/bootstrap.js
index 9a2c303..3ed02f5 100644
--- a/dojo/_base/_loader/bootstrap.js
+++ b/dojo/_base/_loader/bootstrap.js
@@ -48,8 +48,8 @@ d.config[_2]=djConfig[_2];
 }
 }
 dojo.locale=d.config.locale;
-var _3="$Rev: 21254 $".match(/\d+/);
-dojo.version={major:1,minor:4,patch:1,flag:"",revision:_3?+_3[0]:NaN,toString:function(){
+var _3="$Rev: 21516 $".match(/\d+/);
+dojo.version={major:1,minor:4,patch:2,flag:"",revision:_3?+_3[0]:NaN,toString:function(){
 with(d.version){
 return major+"."+minor+"."+patch+flag+" ("+revision+")";
 }
diff --git a/dojo/build.txt b/dojo/build.txt
index 1fc0ef7..55d7b4f 100644
--- a/dojo/build.txt
+++ b/dojo/build.txt
@@ -5,304 +5,304 @@ dojo.js:
 ./../../dojo/_base/_loader/bootstrap.js
 ./../../dojo/_base/_loader/loader.js
 ./../../dojo/_base/_loader/hostenv_browser.js
-./../../release/dojo-release-1.4.1/dojo/_base/lang.js
-./../../release/dojo-release-1.4.1/dojo/_base/array.js
-./../../release/dojo-release-1.4.1/dojo/_base/declare.js
-./../../release/dojo-release-1.4.1/dojo/_base/connect.js
-./../../release/dojo-release-1.4.1/dojo/_base/Deferred.js
-./../../release/dojo-release-1.4.1/dojo/_base/json.js
-./../../release/dojo-release-1.4.1/dojo/_base/Color.js
-./../../release/dojo-release-1.4.1/dojo/_base.js
-./../../release/dojo-release-1.4.1/dojo/_base/window.js
-./../../release/dojo-release-1.4.1/dojo/_base/event.js
-./../../release/dojo-release-1.4.1/dojo/_base/html.js
-./../../release/dojo-release-1.4.1/dojo/_base/NodeList.js
-./../../release/dojo-release-1.4.1/dojo/_base/query.js
-./../../release/dojo-release-1.4.1/dojo/_base/xhr.js
-./../../release/dojo-release-1.4.1/dojo/_base/fx.js
-./../../release/dojo-release-1.4.1/dojo/_base/browser.js
+./../../release/dojo-release-1.4.2/dojo/_base/lang.js
+./../../release/dojo-release-1.4.2/dojo/_base/array.js
+./../../release/dojo-release-1.4.2/dojo/_base/declare.js
+./../../release/dojo-release-1.4.2/dojo/_base/connect.js
+./../../release/dojo-release-1.4.2/dojo/_base/Deferred.js
+./../../release/dojo-release-1.4.2/dojo/_base/json.js
+./../../release/dojo-release-1.4.2/dojo/_base/Color.js
+./../../release/dojo-release-1.4.2/dojo/_base.js
+./../../release/dojo-release-1.4.2/dojo/_base/window.js
+./../../release/dojo-release-1.4.2/dojo/_base/event.js
+./../../release/dojo-release-1.4.2/dojo/_base/html.js
+./../../release/dojo-release-1.4.2/dojo/_base/NodeList.js
+./../../release/dojo-release-1.4.2/dojo/_base/query.js
+./../../release/dojo-release-1.4.2/dojo/_base/xhr.js
+./../../release/dojo-release-1.4.2/dojo/_base/fx.js
+./../../release/dojo-release-1.4.2/dojo/_base/browser.js
 ./jslib/dojoGuardEnd.jsfrag
 
 ../dijit/dijit.js:
-./../../release/dojo-release-1.4.1/dijit/_base/manager.js
-./../../release/dojo-release-1.4.1/dijit/_base/focus.js
-./../../release/dojo-release-1.4.1/dojo/AdapterRegistry.js
-./../../release/dojo-release-1.4.1/dijit/_base/place.js
-./../../release/dojo-release-1.4.1/dijit/_base/window.js
-./../../release/dojo-release-1.4.1/dijit/_base/popup.js
-./../../release/dojo-release-1.4.1/dijit/_base/scroll.js
-./../../release/dojo-release-1.4.1/dijit/_base/sniff.js
-./../../release/dojo-release-1.4.1/dijit/_base/typematic.js
-./../../release/dojo-release-1.4.1/dijit/_base/wai.js
-./../../release/dojo-release-1.4.1/dijit/_base.js
-./../../release/dojo-release-1.4.1/dojo/date/stamp.js
-./../../release/dojo-release-1.4.1/dojo/parser.js
-./../../release/dojo-release-1.4.1/dijit/_Widget.js
-./../../release/dojo-release-1.4.1/dojo/string.js
-./../../release/dojo-release-1.4.1/dojo/cache.js
-./../../release/dojo-release-1.4.1/dijit/_Templated.js
-./../../release/dojo-release-1.4.1/dijit/_Container.js
-./../../release/dojo-release-1.4.1/dijit/_Contained.js
-./../../release/dojo-release-1.4.1/dijit/layout/_LayoutWidget.js
-./../../release/dojo-release-1.4.1/dijit/form/_FormWidget.js
-./../../release/dojo-release-1.4.1/dijit/dijit.js
+./../../release/dojo-release-1.4.2/dijit/_base/manager.js
+./../../release/dojo-release-1.4.2/dijit/_base/focus.js
+./../../release/dojo-release-1.4.2/dojo/AdapterRegistry.js
+./../../release/dojo-release-1.4.2/dijit/_base/place.js
+./../../release/dojo-release-1.4.2/dijit/_base/window.js
+./../../release/dojo-release-1.4.2/dijit/_base/popup.js
+./../../release/dojo-release-1.4.2/dijit/_base/scroll.js
+./../../release/dojo-release-1.4.2/dijit/_base/sniff.js
+./../../release/dojo-release-1.4.2/dijit/_base/typematic.js
+./../../release/dojo-release-1.4.2/dijit/_base/wai.js
+./../../release/dojo-release-1.4.2/dijit/_base.js
+./../../release/dojo-release-1.4.2/dojo/date/stamp.js
+./../../release/dojo-release-1.4.2/dojo/parser.js
+./../../release/dojo-release-1.4.2/dijit/_Widget.js
+./../../release/dojo-release-1.4.2/dojo/string.js
+./../../release/dojo-release-1.4.2/dojo/cache.js
+./../../release/dojo-release-1.4.2/dijit/_Templated.js
+./../../release/dojo-release-1.4.2/dijit/_Container.js
+./../../release/dojo-release-1.4.2/dijit/_Contained.js
+./../../release/dojo-release-1.4.2/dijit/layout/_LayoutWidget.js
+./../../release/dojo-release-1.4.2/dijit/form/_FormWidget.js
+./../../release/dojo-release-1.4.2/dijit/dijit.js
 
 ../dijit/dijit-all.js:
-./../../release/dojo-release-1.4.1/dojo/colors.js
-./../../release/dojo-release-1.4.1/dojo/i18n.js
-./../../release/dojo-release-1.4.1/dijit/ColorPalette.js
-./../../release/dojo-release-1.4.1/dijit/Declaration.js
-./../../release/dojo-release-1.4.1/dojo/dnd/common.js
-./../../release/dojo-release-1.4.1/dojo/dnd/autoscroll.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Mover.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Moveable.js
-./../../release/dojo-release-1.4.1/dojo/dnd/move.js
-./../../release/dojo-release-1.4.1/dojo/dnd/TimedMoveable.js
-./../../release/dojo-release-1.4.1/dojo/fx/Toggler.js
-./../../release/dojo-release-1.4.1/dojo/fx.js
-./../../release/dojo-release-1.4.1/dijit/form/_FormMixin.js
-./../../release/dojo-release-1.4.1/dijit/_DialogMixin.js
-./../../release/dojo-release-1.4.1/dijit/DialogUnderlay.js
-./../../release/dojo-release-1.4.1/dojo/html.js
-./../../release/dojo-release-1.4.1/dijit/layout/ContentPane.js
-./../../release/dojo-release-1.4.1/dijit/TooltipDialog.js
-./../../release/dojo-release-1.4.1/dijit/Dialog.js
-./../../release/dojo-release-1.4.1/dijit/_editor/selection.js
-./../../release/dojo-release-1.4.1/dijit/_editor/range.js
-./../../release/dojo-release-1.4.1/dijit/_editor/html.js
-./../../release/dojo-release-1.4.1/dijit/_editor/RichText.js
-./../../release/dojo-release-1.4.1/dijit/_KeyNavContainer.js
-./../../release/dojo-release-1.4.1/dijit/ToolbarSeparator.js
-./../../release/dojo-release-1.4.1/dijit/Toolbar.js
-./../../release/dojo-release-1.4.1/dijit/_HasDropDown.js
-./../../release/dojo-release-1.4.1/dijit/form/Button.js
-./../../release/dojo-release-1.4.1/dijit/_editor/_Plugin.js
-./../../release/dojo-release-1.4.1/dijit/_editor/plugins/EnterKeyHandling.js
-./../../release/dojo-release-1.4.1/dijit/Editor.js
-./../../release/dojo-release-1.4.1/dijit/MenuItem.js
-./../../release/dojo-release-1.4.1/dijit/PopupMenuItem.js
-./../../release/dojo-release-1.4.1/dijit/CheckedMenuItem.js
-./../../release/dojo-release-1.4.1/dijit/MenuSeparator.js
-./../../release/dojo-release-1.4.1/dijit/Menu.js
-./../../release/dojo-release-1.4.1/dijit/MenuBar.js
-./../../release/dojo-release-1.4.1/dijit/MenuBarItem.js
-./../../release/dojo-release-1.4.1/dijit/PopupMenuBarItem.js
-./../../release/dojo-release-1.4.1/dojo/regexp.js
-./../../release/dojo-release-1.4.1/dojo/number.js
-./../../release/dojo-release-1.4.1/dijit/ProgressBar.js
-./../../release/dojo-release-1.4.1/dijit/TitlePane.js
-./../../release/dojo-release-1.4.1/dijit/Tooltip.js
-./../../release/dojo-release-1.4.1/dojo/DeferredList.js
-./../../release/dojo-release-1.4.1/dojo/cookie.js
-./../../release/dojo-release-1.4.1/dijit/tree/TreeStoreModel.js
-./../../release/dojo-release-1.4.1/dijit/tree/ForestStoreModel.js
-./../../release/dojo-release-1.4.1/dijit/Tree.js
-./../../release/dojo-release-1.4.1/dijit/form/TextBox.js
-./../../release/dojo-release-1.4.1/dijit/InlineEditBox.js
-./../../release/dojo-release-1.4.1/dijit/form/Form.js
-./../../release/dojo-release-1.4.1/dijit/form/DropDownButton.js
-./../../release/dojo-release-1.4.1/dijit/form/ComboButton.js
-./../../release/dojo-release-1.4.1/dijit/form/ToggleButton.js
-./../../release/dojo-release-1.4.1/dijit/form/CheckBox.js
-./../../release/dojo-release-1.4.1/dijit/form/RadioButton.js
-./../../release/dojo-release-1.4.1/dijit/form/ValidationTextBox.js
-./../../release/dojo-release-1.4.1/dojo/cldr/monetary.js
-./../../release/dojo-release-1.4.1/dojo/currency.js
-./../../release/dojo-release-1.4.1/dijit/form/NumberTextBox.js
-./../../release/dojo-release-1.4.1/dijit/form/CurrencyTextBox.js
-./../../release/dojo-release-1.4.1/dojo/cldr/supplemental.js
-./../../release/dojo-release-1.4.1/dojo/date.js
-./../../release/dojo-release-1.4.1/dojo/date/locale.js
-./../../release/dojo-release-1.4.1/dijit/Calendar.js
-./../../release/dojo-release-1.4.1/dijit/form/_DateTimeTextBox.js
-./../../release/dojo-release-1.4.1/dijit/form/DateTextBox.js
-./../../release/dojo-release-1.4.1/dijit/form/_Spinner.js
-./../../release/dojo-release-1.4.1/dijit/form/NumberSpinner.js
-./../../release/dojo-release-1.4.1/dojo/data/util/sorter.js
-./../../release/dojo-release-1.4.1/dojo/data/util/simpleFetch.js
-./../../release/dojo-release-1.4.1/dojo/data/util/filter.js
-./../../release/dojo-release-1.4.1/dijit/form/ComboBox.js
-./../../release/dojo-release-1.4.1/dijit/form/FilteringSelect.js
-./../../release/dojo-release-1.4.1/dijit/form/MultiSelect.js
-./../../release/dojo-release-1.4.1/dijit/form/HorizontalSlider.js
-./../../release/dojo-release-1.4.1/dijit/form/VerticalSlider.js
-./../../release/dojo-release-1.4.1/dijit/form/HorizontalRule.js
-./../../release/dojo-release-1.4.1/dijit/form/VerticalRule.js
-./../../release/dojo-release-1.4.1/dijit/form/HorizontalRuleLabels.js
-./../../release/dojo-release-1.4.1/dijit/form/VerticalRuleLabels.js
-./../../release/dojo-release-1.4.1/dijit/form/SimpleTextarea.js
-./../../release/dojo-release-1.4.1/dijit/form/Textarea.js
-./../../release/dojo-release-1.4.1/dijit/layout/StackController.js
-./../../release/dojo-release-1.4.1/dijit/layout/StackContainer.js
-./../../release/dojo-release-1.4.1/dijit/layout/AccordionPane.js
-./../../release/dojo-release-1.4.1/dijit/layout/AccordionContainer.js
-./../../release/dojo-release-1.4.1/dijit/layout/BorderContainer.js
-./../../release/dojo-release-1.4.1/dijit/layout/LayoutContainer.js
-./../../release/dojo-release-1.4.1/dijit/layout/LinkPane.js
-./../../release/dojo-release-1.4.1/dijit/layout/SplitContainer.js
-./../../release/dojo-release-1.4.1/dijit/layout/_TabContainerBase.js
-./../../release/dojo-release-1.4.1/dijit/layout/TabController.js
-./../../release/dojo-release-1.4.1/dijit/layout/ScrollingTabController.js
-./../../release/dojo-release-1.4.1/dijit/layout/TabContainer.js
-./../../release/dojo-release-1.4.1/dijit/dijit-all.js
+./../../release/dojo-release-1.4.2/dojo/colors.js
+./../../release/dojo-release-1.4.2/dojo/i18n.js
+./../../release/dojo-release-1.4.2/dijit/ColorPalette.js
+./../../release/dojo-release-1.4.2/dijit/Declaration.js
+./../../release/dojo-release-1.4.2/dojo/dnd/common.js
+./../../release/dojo-release-1.4.2/dojo/dnd/autoscroll.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Mover.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Moveable.js
+./../../release/dojo-release-1.4.2/dojo/dnd/move.js
+./../../release/dojo-release-1.4.2/dojo/dnd/TimedMoveable.js
+./../../release/dojo-release-1.4.2/dojo/fx/Toggler.js
+./../../release/dojo-release-1.4.2/dojo/fx.js
+./../../release/dojo-release-1.4.2/dijit/form/_FormMixin.js
+./../../release/dojo-release-1.4.2/dijit/_DialogMixin.js
+./../../release/dojo-release-1.4.2/dijit/DialogUnderlay.js
+./../../release/dojo-release-1.4.2/dojo/html.js
+./../../release/dojo-release-1.4.2/dijit/layout/ContentPane.js
+./../../release/dojo-release-1.4.2/dijit/TooltipDialog.js
+./../../release/dojo-release-1.4.2/dijit/Dialog.js
+./../../release/dojo-release-1.4.2/dijit/_editor/selection.js
+./../../release/dojo-release-1.4.2/dijit/_editor/range.js
+./../../release/dojo-release-1.4.2/dijit/_editor/html.js
+./../../release/dojo-release-1.4.2/dijit/_editor/RichText.js
+./../../release/dojo-release-1.4.2/dijit/_KeyNavContainer.js
+./../../release/dojo-release-1.4.2/dijit/ToolbarSeparator.js
+./../../release/dojo-release-1.4.2/dijit/Toolbar.js
+./../../release/dojo-release-1.4.2/dijit/_HasDropDown.js
+./../../release/dojo-release-1.4.2/dijit/form/Button.js
+./../../release/dojo-release-1.4.2/dijit/_editor/_Plugin.js
+./../../release/dojo-release-1.4.2/dijit/_editor/plugins/EnterKeyHandling.js
+./../../release/dojo-release-1.4.2/dijit/Editor.js
+./../../release/dojo-release-1.4.2/dijit/MenuItem.js
+./../../release/dojo-release-1.4.2/dijit/PopupMenuItem.js
+./../../release/dojo-release-1.4.2/dijit/CheckedMenuItem.js
+./../../release/dojo-release-1.4.2/dijit/MenuSeparator.js
+./../../release/dojo-release-1.4.2/dijit/Menu.js
+./../../release/dojo-release-1.4.2/dijit/MenuBar.js
+./../../release/dojo-release-1.4.2/dijit/MenuBarItem.js
+./../../release/dojo-release-1.4.2/dijit/PopupMenuBarItem.js
+./../../release/dojo-release-1.4.2/dojo/regexp.js
+./../../release/dojo-release-1.4.2/dojo/number.js
+./../../release/dojo-release-1.4.2/dijit/ProgressBar.js
+./../../release/dojo-release-1.4.2/dijit/TitlePane.js
+./../../release/dojo-release-1.4.2/dijit/Tooltip.js
+./../../release/dojo-release-1.4.2/dojo/DeferredList.js
+./../../release/dojo-release-1.4.2/dojo/cookie.js
+./../../release/dojo-release-1.4.2/dijit/tree/TreeStoreModel.js
+./../../release/dojo-release-1.4.2/dijit/tree/ForestStoreModel.js
+./../../release/dojo-release-1.4.2/dijit/Tree.js
+./../../release/dojo-release-1.4.2/dijit/form/TextBox.js
+./../../release/dojo-release-1.4.2/dijit/InlineEditBox.js
+./../../release/dojo-release-1.4.2/dijit/form/Form.js
+./../../release/dojo-release-1.4.2/dijit/form/DropDownButton.js
+./../../release/dojo-release-1.4.2/dijit/form/ComboButton.js
+./../../release/dojo-release-1.4.2/dijit/form/ToggleButton.js
+./../../release/dojo-release-1.4.2/dijit/form/CheckBox.js
+./../../release/dojo-release-1.4.2/dijit/form/RadioButton.js
+./../../release/dojo-release-1.4.2/dijit/form/ValidationTextBox.js
+./../../release/dojo-release-1.4.2/dojo/cldr/monetary.js
+./../../release/dojo-release-1.4.2/dojo/currency.js
+./../../release/dojo-release-1.4.2/dijit/form/NumberTextBox.js
+./../../release/dojo-release-1.4.2/dijit/form/CurrencyTextBox.js
+./../../release/dojo-release-1.4.2/dojo/cldr/supplemental.js
+./../../release/dojo-release-1.4.2/dojo/date.js
+./../../release/dojo-release-1.4.2/dojo/date/locale.js
+./../../release/dojo-release-1.4.2/dijit/Calendar.js
+./../../release/dojo-release-1.4.2/dijit/form/_DateTimeTextBox.js
+./../../release/dojo-release-1.4.2/dijit/form/DateTextBox.js
+./../../release/dojo-release-1.4.2/dijit/form/_Spinner.js
+./../../release/dojo-release-1.4.2/dijit/form/NumberSpinner.js
+./../../release/dojo-release-1.4.2/dojo/data/util/sorter.js
+./../../release/dojo-release-1.4.2/dojo/data/util/simpleFetch.js
+./../../release/dojo-release-1.4.2/dojo/data/util/filter.js
+./../../release/dojo-release-1.4.2/dijit/form/ComboBox.js
+./../../release/dojo-release-1.4.2/dijit/form/FilteringSelect.js
+./../../release/dojo-release-1.4.2/dijit/form/MultiSelect.js
+./../../release/dojo-release-1.4.2/dijit/form/HorizontalSlider.js
+./../../release/dojo-release-1.4.2/dijit/form/VerticalSlider.js
+./../../release/dojo-release-1.4.2/dijit/form/HorizontalRule.js
+./../../release/dojo-release-1.4.2/dijit/form/VerticalRule.js
+./../../release/dojo-release-1.4.2/dijit/form/HorizontalRuleLabels.js
+./../../release/dojo-release-1.4.2/dijit/form/VerticalRuleLabels.js
+./../../release/dojo-release-1.4.2/dijit/form/SimpleTextarea.js
+./../../release/dojo-release-1.4.2/dijit/form/Textarea.js
+./../../release/dojo-release-1.4.2/dijit/layout/StackController.js
+./../../release/dojo-release-1.4.2/dijit/layout/StackContainer.js
+./../../release/dojo-release-1.4.2/dijit/layout/AccordionPane.js
+./../../release/dojo-release-1.4.2/dijit/layout/AccordionContainer.js
+./../../release/dojo-release-1.4.2/dijit/layout/BorderContainer.js
+./../../release/dojo-release-1.4.2/dijit/layout/LayoutContainer.js
+./../../release/dojo-release-1.4.2/dijit/layout/LinkPane.js
+./../../release/dojo-release-1.4.2/dijit/layout/SplitContainer.js
+./../../release/dojo-release-1.4.2/dijit/layout/_TabContainerBase.js
+./../../release/dojo-release-1.4.2/dijit/layout/TabController.js
+./../../release/dojo-release-1.4.2/dijit/layout/ScrollingTabController.js
+./../../release/dojo-release-1.4.2/dijit/layout/TabContainer.js
+./../../release/dojo-release-1.4.2/dijit/dijit-all.js
 
 ../dojox/grid/DataGrid.js:
-./../../release/dojo-release-1.4.1/dijit/_base/manager.js
-./../../release/dojo-release-1.4.1/dijit/_base/focus.js
-./../../release/dojo-release-1.4.1/dojo/AdapterRegistry.js
-./../../release/dojo-release-1.4.1/dijit/_base/place.js
-./../../release/dojo-release-1.4.1/dijit/_base/window.js
-./../../release/dojo-release-1.4.1/dijit/_base/popup.js
-./../../release/dojo-release-1.4.1/dijit/_base/scroll.js
-./../../release/dojo-release-1.4.1/dijit/_base/sniff.js
-./../../release/dojo-release-1.4.1/dijit/_base/typematic.js
-./../../release/dojo-release-1.4.1/dijit/_base/wai.js
-./../../release/dojo-release-1.4.1/dijit/_base.js
-./../../release/dojo-release-1.4.1/dojo/date/stamp.js
-./../../release/dojo-release-1.4.1/dojo/parser.js
-./../../release/dojo-release-1.4.1/dijit/_Widget.js
-./../../release/dojo-release-1.4.1/dojo/string.js
-./../../release/dojo-release-1.4.1/dojo/cache.js
-./../../release/dojo-release-1.4.1/dijit/_Templated.js
-./../../release/dojo-release-1.4.1/dijit/_Container.js
-./../../release/dojo-release-1.4.1/dijit/_Contained.js
-./../../release/dojo-release-1.4.1/dijit/layout/_LayoutWidget.js
-./../../release/dojo-release-1.4.1/dijit/form/_FormWidget.js
-./../../release/dojo-release-1.4.1/dijit/dijit.js
-./../../release/dojo-release-1.4.1/dijit/_KeyNavContainer.js
-./../../release/dojo-release-1.4.1/dijit/MenuItem.js
-./../../release/dojo-release-1.4.1/dijit/PopupMenuItem.js
-./../../release/dojo-release-1.4.1/dijit/CheckedMenuItem.js
-./../../release/dojo-release-1.4.1/dijit/MenuSeparator.js
-./../../release/dojo-release-1.4.1/dijit/Menu.js
-./../../release/dojo-release-1.4.1/dojox/html/metrics.js
-./../../release/dojo-release-1.4.1/dojox/grid/util.js
-./../../release/dojo-release-1.4.1/dojox/grid/_Scroller.js
-./../../release/dojo-release-1.4.1/dojox/grid/cells/_base.js
-./../../release/dojo-release-1.4.1/dojox/grid/cells.js
-./../../release/dojo-release-1.4.1/dojo/dnd/common.js
-./../../release/dojo-release-1.4.1/dojo/dnd/autoscroll.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Mover.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Moveable.js
-./../../release/dojo-release-1.4.1/dojox/grid/_Builder.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Container.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Selector.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Avatar.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Manager.js
-./../../release/dojo-release-1.4.1/dojo/dnd/Source.js
-./../../release/dojo-release-1.4.1/dojox/grid/_View.js
-./../../release/dojo-release-1.4.1/dojox/grid/_RowSelector.js
-./../../release/dojo-release-1.4.1/dojox/grid/_Layout.js
-./../../release/dojo-release-1.4.1/dojox/grid/_ViewManager.js
-./../../release/dojo-release-1.4.1/dojox/grid/_RowManager.js
-./../../release/dojo-release-1.4.1/dojox/grid/_FocusManager.js
-./../../release/dojo-release-1.4.1/dojox/grid/_EditManager.js
-./../../release/dojo-release-1.4.1/dojox/grid/Selection.js
-./../../release/dojo-release-1.4.1/dojox/grid/_Events.js
-./../../release/dojo-release-1.4.1/dojo/i18n.js
-./../../release/dojo-release-1.4.1/dojox/grid/_Grid.js
-./../../release/dojo-release-1.4.1/dojox/grid/DataSelection.js
-./../../release/dojo-release-1.4.1/dojox/grid/DataGrid.js
+./../../release/dojo-release-1.4.2/dijit/_base/manager.js
+./../../release/dojo-release-1.4.2/dijit/_base/focus.js
+./../../release/dojo-release-1.4.2/dojo/AdapterRegistry.js
+./../../release/dojo-release-1.4.2/dijit/_base/place.js
+./../../release/dojo-release-1.4.2/dijit/_base/window.js
+./../../release/dojo-release-1.4.2/dijit/_base/popup.js
+./../../release/dojo-release-1.4.2/dijit/_base/scroll.js
+./../../release/dojo-release-1.4.2/dijit/_base/sniff.js
+./../../release/dojo-release-1.4.2/dijit/_base/typematic.js
+./../../release/dojo-release-1.4.2/dijit/_base/wai.js
+./../../release/dojo-release-1.4.2/dijit/_base.js
+./../../release/dojo-release-1.4.2/dojo/date/stamp.js
+./../../release/dojo-release-1.4.2/dojo/parser.js
+./../../release/dojo-release-1.4.2/dijit/_Widget.js
+./../../release/dojo-release-1.4.2/dojo/string.js
+./../../release/dojo-release-1.4.2/dojo/cache.js
+./../../release/dojo-release-1.4.2/dijit/_Templated.js
+./../../release/dojo-release-1.4.2/dijit/_Container.js
+./../../release/dojo-release-1.4.2/dijit/_Contained.js
+./../../release/dojo-release-1.4.2/dijit/layout/_LayoutWidget.js
+./../../release/dojo-release-1.4.2/dijit/form/_FormWidget.js
+./../../release/dojo-release-1.4.2/dijit/dijit.js
+./../../release/dojo-release-1.4.2/dijit/_KeyNavContainer.js
+./../../release/dojo-release-1.4.2/dijit/MenuItem.js
+./../../release/dojo-release-1.4.2/dijit/PopupMenuItem.js
+./../../release/dojo-release-1.4.2/dijit/CheckedMenuItem.js
+./../../release/dojo-release-1.4.2/dijit/MenuSeparator.js
+./../../release/dojo-release-1.4.2/dijit/Menu.js
+./../../release/dojo-release-1.4.2/dojox/html/metrics.js
+./../../release/dojo-release-1.4.2/dojox/grid/util.js
+./../../release/dojo-release-1.4.2/dojox/grid/_Scroller.js
+./../../release/dojo-release-1.4.2/dojox/grid/cells/_base.js
+./../../release/dojo-release-1.4.2/dojox/grid/cells.js
+./../../release/dojo-release-1.4.2/dojo/dnd/common.js
+./../../release/dojo-release-1.4.2/dojo/dnd/autoscroll.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Mover.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Moveable.js
+./../../release/dojo-release-1.4.2/dojox/grid/_Builder.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Container.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Selector.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Avatar.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Manager.js
+./../../release/dojo-release-1.4.2/dojo/dnd/Source.js
+./../../release/dojo-release-1.4.2/dojox/grid/_View.js
+./../../release/dojo-release-1.4.2/dojox/grid/_RowSelector.js
+./../../release/dojo-release-1.4.2/dojox/grid/_Layout.js
+./../../release/dojo-release-1.4.2/dojox/grid/_ViewManager.js
+./../../release/dojo-release-1.4.2/dojox/grid/_RowManager.js
+./../../release/dojo-release-1.4.2/dojox/grid/_FocusManager.js
+./../../release/dojo-release-1.4.2/dojox/grid/_EditManager.js
+./../../release/dojo-release-1.4.2/dojox/grid/Selection.js
+./../../release/dojo-release-1.4.2/dojox/grid/_Events.js
+./../../release/dojo-release-1.4.2/dojo/i18n.js
+./../../release/dojo-release-1.4.2/dojox/grid/_Grid.js
+./../../release/dojo-release-1.4.2/dojox/grid/DataSelection.js
+./../../release/dojo-release-1.4.2/dojox/grid/DataGrid.js
 
 ../dojox/gfx.js:
-./../../release/dojo-release-1.4.1/dojox/gfx/matrix.js
-./../../release/dojo-release-1.4.1/dojox/gfx/_base.js
-./../../release/dojo-release-1.4.1/dojox/gfx.js
+./../../release/dojo-release-1.4.2/dojox/gfx/matrix.js
+./../../release/dojo-release-1.4.2/dojox/gfx/_base.js
+./../../release/dojo-release-1.4.2/dojox/gfx.js
 
 ../dojox/charting/widget/Chart2D.js:
-./../../release/dojo-release-1.4.1/dijit/_base/manager.js
-./../../release/dojo-release-1.4.1/dijit/_base/focus.js
-./../../release/dojo-release-1.4.1/dojo/AdapterRegistry.js
-./../../release/dojo-release-1.4.1/dijit/_base/place.js
-./../../release/dojo-release-1.4.1/dijit/_base/window.js
-./../../release/dojo-release-1.4.1/dijit/_base/popup.js
-./../../release/dojo-release-1.4.1/dijit/_base/scroll.js
-./../../release/dojo-release-1.4.1/dijit/_base/sniff.js
-./../../release/dojo-release-1.4.1/dijit/_base/typematic.js
-./../../release/dojo-release-1.4.1/dijit/_base/wai.js
-./../../release/dojo-release-1.4.1/dijit/_base.js
-./../../release/dojo-release-1.4.1/dijit/_Widget.js
-./../../release/dojo-release-1.4.1/dojox/gfx/matrix.js
-./../../release/dojo-release-1.4.1/dojox/gfx/_base.js
-./../../release/dojo-release-1.4.1/dojox/gfx.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/lambda.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/array.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/object.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/fold.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/reversed.js
-./../../release/dojo-release-1.4.1/dojo/colors.js
-./../../release/dojo-release-1.4.1/dojox/color/_base.js
-./../../release/dojo-release-1.4.1/dojox/color.js
-./../../release/dojo-release-1.4.1/dojox/color/Palette.js
-./../../release/dojo-release-1.4.1/dojox/charting/Theme.js
-./../../release/dojo-release-1.4.1/dojox/charting/Element.js
-./../../release/dojo-release-1.4.1/dojox/charting/Series.js
-./../../release/dojo-release-1.4.1/dojox/charting/scaler/common.js
-./../../release/dojo-release-1.4.1/dojox/charting/scaler/linear.js
-./../../release/dojo-release-1.4.1/dojox/charting/axis2d/common.js
-./../../release/dojo-release-1.4.1/dojox/charting/axis2d/Base.js
-./../../release/dojo-release-1.4.1/dojo/string.js
-./../../release/dojo-release-1.4.1/dojox/lang/utils.js
-./../../release/dojo-release-1.4.1/dojox/charting/axis2d/Default.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/common.js
-./../../release/dojo-release-1.4.1/dojox/charting/scaler/primitive.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Base.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Default.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Lines.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Areas.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Markers.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/MarkersOnly.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Scatter.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/sequence.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Stacked.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/StackedLines.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/StackedAreas.js
-./../../release/dojo-release-1.4.1/dojox/gfx/fx.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Columns.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/StackedColumns.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/ClusteredColumns.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Bars.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/StackedBars.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/ClusteredBars.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Grid.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Pie.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Bubble.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/Candlesticks.js
-./../../release/dojo-release-1.4.1/dojox/charting/plot2d/OHLC.js
-./../../release/dojo-release-1.4.1/dojox/charting/Chart2D.js
-./../../release/dojo-release-1.4.1/dojo/fx/easing.js
-./../../release/dojo-release-1.4.1/dojox/charting/action2d/Base.js
-./../../release/dojo-release-1.4.1/dojox/charting/action2d/Highlight.js
-./../../release/dojo-release-1.4.1/dojo/fx/Toggler.js
-./../../release/dojo-release-1.4.1/dojo/fx.js
-./../../release/dojo-release-1.4.1/dojox/charting/action2d/Magnify.js
-./../../release/dojo-release-1.4.1/dojox/lang/functional/scan.js
-./../../release/dojo-release-1.4.1/dojox/charting/action2d/MoveSlice.js
-./../../release/dojo-release-1.4.1/dojox/charting/action2d/Shake.js
-./../../release/dojo-release-1.4.1/dojo/date/stamp.js
-./../../release/dojo-release-1.4.1/dojo/parser.js
-./../../release/dojo-release-1.4.1/dojo/cache.js
-./../../release/dojo-release-1.4.1/dijit/_Templated.js
-./../../release/dojo-release-1.4.1/dijit/Tooltip.js
-./../../release/dojo-release-1.4.1/dojox/charting/action2d/Tooltip.js
-./../../release/dojo-release-1.4.1/dojox/charting/widget/Chart2D.js
-./../../release/dojo-release-1.4.1/dojox/charting/themes/ET/greys.js
-./../../release/dojo-release-1.4.1/dojox/charting/widget/Sparkline.js
-./../../release/dojo-release-1.4.1/dojox/charting/widget/Legend.js
+./../../release/dojo-release-1.4.2/dijit/_base/manager.js
+./../../release/dojo-release-1.4.2/dijit/_base/focus.js
+./../../release/dojo-release-1.4.2/dojo/AdapterRegistry.js
+./../../release/dojo-release-1.4.2/dijit/_base/place.js
+./../../release/dojo-release-1.4.2/dijit/_base/window.js
+./../../release/dojo-release-1.4.2/dijit/_base/popup.js
+./../../release/dojo-release-1.4.2/dijit/_base/scroll.js
+./../../release/dojo-release-1.4.2/dijit/_base/sniff.js
+./../../release/dojo-release-1.4.2/dijit/_base/typematic.js
+./../../release/dojo-release-1.4.2/dijit/_base/wai.js
+./../../release/dojo-release-1.4.2/dijit/_base.js
+./../../release/dojo-release-1.4.2/dijit/_Widget.js
+./../../release/dojo-release-1.4.2/dojox/gfx/matrix.js
+./../../release/dojo-release-1.4.2/dojox/gfx/_base.js
+./../../release/dojo-release-1.4.2/dojox/gfx.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/lambda.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/array.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/object.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/fold.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/reversed.js
+./../../release/dojo-release-1.4.2/dojo/colors.js
+./../../release/dojo-release-1.4.2/dojox/color/_base.js
+./../../release/dojo-release-1.4.2/dojox/color.js
+./../../release/dojo-release-1.4.2/dojox/color/Palette.js
+./../../release/dojo-release-1.4.2/dojox/charting/Theme.js
+./../../release/dojo-release-1.4.2/dojox/charting/Element.js
+./../../release/dojo-release-1.4.2/dojox/charting/Series.js
+./../../release/dojo-release-1.4.2/dojox/charting/scaler/common.js
+./../../release/dojo-release-1.4.2/dojox/charting/scaler/linear.js
+./../../release/dojo-release-1.4.2/dojox/charting/axis2d/common.js
+./../../release/dojo-release-1.4.2/dojox/charting/axis2d/Base.js
+./../../release/dojo-release-1.4.2/dojo/string.js
+./../../release/dojo-release-1.4.2/dojox/lang/utils.js
+./../../release/dojo-release-1.4.2/dojox/charting/axis2d/Default.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/common.js
+./../../release/dojo-release-1.4.2/dojox/charting/scaler/primitive.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Base.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Default.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Lines.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Areas.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Markers.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/MarkersOnly.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Scatter.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/sequence.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Stacked.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/StackedLines.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/StackedAreas.js
+./../../release/dojo-release-1.4.2/dojox/gfx/fx.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Columns.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/StackedColumns.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/ClusteredColumns.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Bars.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/StackedBars.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/ClusteredBars.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Grid.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Pie.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Bubble.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/Candlesticks.js
+./../../release/dojo-release-1.4.2/dojox/charting/plot2d/OHLC.js
+./../../release/dojo-release-1.4.2/dojox/charting/Chart2D.js
+./../../release/dojo-release-1.4.2/dojo/fx/easing.js
+./../../release/dojo-release-1.4.2/dojox/charting/action2d/Base.js
+./../../release/dojo-release-1.4.2/dojox/charting/action2d/Highlight.js
+./../../release/dojo-release-1.4.2/dojo/fx/Toggler.js
+./../../release/dojo-release-1.4.2/dojo/fx.js
+./../../release/dojo-release-1.4.2/dojox/charting/action2d/Magnify.js
+./../../release/dojo-release-1.4.2/dojox/lang/functional/scan.js
+./../../release/dojo-release-1.4.2/dojox/charting/action2d/MoveSlice.js
+./../../release/dojo-release-1.4.2/dojox/charting/action2d/Shake.js
+./../../release/dojo-release-1.4.2/dojo/date/stamp.js
+./../../release/dojo-release-1.4.2/dojo/parser.js
+./../../release/dojo-release-1.4.2/dojo/cache.js
+./../../release/dojo-release-1.4.2/dijit/_Templated.js
+./../../release/dojo-release-1.4.2/dijit/Tooltip.js
+./../../release/dojo-release-1.4.2/dojox/charting/action2d/Tooltip.js
+./../../release/dojo-release-1.4.2/dojox/charting/widget/Chart2D.js
+./../../release/dojo-release-1.4.2/dojox/charting/themes/ET/greys.js
+./../../release/dojo-release-1.4.2/dojox/charting/widget/Sparkline.js
+./../../release/dojo-release-1.4.2/dojox/charting/widget/Legend.js
 
 ../dojox/dtl.js:
-./../../release/dojo-release-1.4.1/dojox/string/Builder.js
-./../../release/dojo-release-1.4.1/dojox/string/tokenize.js
-./../../release/dojo-release-1.4.1/dojox/dtl/_base.js
-./../../release/dojo-release-1.4.1/dojox/dtl.js
-./../../release/dojo-release-1.4.1/dojox/dtl/Context.js
-./../../release/dojo-release-1.4.1/dojox/dtl/tag/logic.js
-./../../release/dojo-release-1.4.1/dojox/dtl/tag/loop.js
-./../../release/dojo-release-1.4.1/dojo/date.js
-./../../release/dojo-release-1.4.1/dojox/date/php.js
-./../../release/dojo-release-1.4.1/dojox/dtl/utils/date.js
-./../../release/dojo-release-1.4.1/dojox/dtl/tag/date.js
-./../../release/dojo-release-1.4.1/dojox/dtl/tag/loader.js
-./../../release/dojo-release-1.4.1/dojox/dtl/tag/misc.js
-./../../release/dojo-release-1.4.1/dojox/dtl/ext-dojo/NodeList.js
+./../../release/dojo-release-1.4.2/dojox/string/Builder.js
+./../../release/dojo-release-1.4.2/dojox/string/tokenize.js
+./../../release/dojo-release-1.4.2/dojox/dtl/_base.js
+./../../release/dojo-release-1.4.2/dojox/dtl.js
+./../../release/dojo-release-1.4.2/dojox/dtl/Context.js
+./../../release/dojo-release-1.4.2/dojox/dtl/tag/logic.js
+./../../release/dojo-release-1.4.2/dojox/dtl/tag/loop.js
+./../../release/dojo-release-1.4.2/dojo/date.js
+./../../release/dojo-release-1.4.2/dojox/date/php.js
+./../../release/dojo-release-1.4.2/dojox/dtl/utils/date.js
+./../../release/dojo-release-1.4.2/dojox/dtl/tag/date.js
+./../../release/dojo-release-1.4.2/dojox/dtl/tag/loader.js
+./../../release/dojo-release-1.4.2/dojox/dtl/tag/misc.js
+./../../release/dojo-release-1.4.2/dojox/dtl/ext-dojo/NodeList.js
diff --git a/dojo/dnd/common.js b/dojo/dnd/common.js
index 6ea4050..6b73bd1 100644
--- a/dojo/dnd/common.js
+++ b/dojo/dnd/common.js
@@ -8,6 +8,7 @@
 if(!dojo._hasResource["dojo.dnd.common"]){
 dojo._hasResource["dojo.dnd.common"]=true;
 dojo.provide("dojo.dnd.common");
+dojo.dnd.getCopyKeyState=dojo.isCopyKeyPressed;
 dojo.dnd._uniqueId=0;
 dojo.dnd.getUniqueId=function(){
 var id;
diff --git a/dojo/dojo.js b/dojo/dojo.js
index 60a2633..42c4618 100644
--- a/dojo/dojo.js
+++ b/dojo/dojo.js
@@ -13,4 +13,4 @@
 	for documentation and information on getting the source.
 */
 
-(function(){var _1=null;if((_1||(typeof djConfig!="undefined"&&djConfig.scopeMap))&&(typeof window!="undefined")){var _2="",_3="",_4="",_5={},_6={};_1=_1||djConfig.scopeMap;for(var i=0;i<_1.length;i++){var _7=_1[i];_2+="var "+_7[0]+" = {}; "+_7[1]+" = "+_7[0]+";"+_7[1]+"._scopeName = '"+_7[1]+"';";_3+=(i==0?"":",")+_7[0];_4+=(i==0?"":",")+_7[1];_5[_7[0]]=_7[1];_6[_7[1]]=_7[0];}eval(_2+"dojo._scopeArgs = ["+_4+"];");dojo._scopePrefixArgs=_3;dojo._scopePrefix="(function("+_3+"){";dojo._sco [...]
+(function(){var _1=null;if((_1||(typeof djConfig!="undefined"&&djConfig.scopeMap))&&(typeof window!="undefined")){var _2="",_3="",_4="",_5={},_6={};_1=_1||djConfig.scopeMap;for(var i=0;i<_1.length;i++){var _7=_1[i];_2+="var "+_7[0]+" = {}; "+_7[1]+" = "+_7[0]+";"+_7[1]+"._scopeName = '"+_7[1]+"';";_3+=(i==0?"":",")+_7[0];_4+=(i==0?"":",")+_7[1];_5[_7[0]]=_7[1];_6[_7[1]]=_7[0];}eval(_2+"dojo._scopeArgs = ["+_4+"];");dojo._scopePrefixArgs=_3;dojo._scopePrefix="(function("+_3+"){";dojo._sco [...]
diff --git a/dojo/dojo.js.uncompressed.js b/dojo/dojo.js.uncompressed.js
index 2153165..a5317e6 100644
--- a/dojo/dojo.js.uncompressed.js
+++ b/dojo/dojo.js.uncompressed.js
@@ -271,7 +271,7 @@ dojo.global = {
 =====*/
 	dojo.locale = d.config.locale;
 
-	var rev = "$Rev: 21254 $".match(/\d+/);
+	var rev = "$Rev: 21516 $".match(/\d+/);
 
 /*=====
 	dojo.version = function(){
@@ -295,7 +295,7 @@ dojo.global = {
 	}
 =====*/
 	dojo.version = {
-		major: 1, minor: 4, patch: 1, flag: "",
+		major: 1, minor: 4, patch: 2, flag: "",
 		revision: rev ? +rev[0] : NaN,
 		toString: function(){
 			with(d.version){
diff --git a/dojo/resources/iframe_history.html b/dojo/resources/iframe_history.html
index 8f28f51..2c5acce 100644
--- a/dojo/resources/iframe_history.html
+++ b/dojo/resources/iframe_history.html
@@ -8,43 +8,8 @@
 	<script type="text/javascript">
 	// <!--
 	var noInit = false;
-	
-	function defineParams(sparams){
-		if(sparams){
-			var ss = (sparams.indexOf("&") >= 0) ? "&" : "&";
-			sparams = sparams.split(ss);
-			for(var x=0; x<sparams.length; x++){
-				var tp = sparams[x].split("=");
-				if(typeof window[tp[0]] != "undefined"){
-					window[tp[0]] = ((tp[1]=="true")||(tp[1]=="false")) ? eval(tp[1]) : tp[1];
-				}
-			}
-		}
-	}
-	
-	function init(){
-		// parse the query string if there is one to try to get params that
-		// we can act on. Also allow params to be in a fragment identifier.
-		var query = null;
-		var frag = null;
-		var url = document.location.href;
-		var hashIndex = url.indexOf("#");
 		
-		//Extract fragment identifier
-		if(hashIndex != -1){
-			frag = url.substring(hashIndex + 1, url.length);
-			url = url.substring(0, hashIndex);
-		}
-
-		//Extract querystring
-		var parts = url.split("?");
-		if(parts.length == 2){
-			query = parts[1];
-		}
-
-		defineParams(query);
-		defineParams(frag);
-
+	function init(){
 		if(noInit){ return; }
 		var hasParentDojo = false;
 		try{
diff --git a/dojox/analytics/logger/JSON.php b/dojox/analytics/logger/JSON.php
deleted file mode 100644
index e87e4d0..0000000
--- a/dojox/analytics/logger/JSON.php
+++ /dev/null
@@ -1,724 +0,0 @@
-<?php
-/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
-
-/** 
- * Converts to and from JSON format.
- * 
- * JSON (JavaScript Object Notation) is a lightweight data-interchange
- * format. It is easy for humans to read and write. It is easy for machines
- * to parse and generate. It is based on a subset of the JavaScript
- * Programming Language, Standard ECMA-262 3rd Edition - December 1999.
- * This feature can also be found in  Python. JSON is a text format that is
- * completely language independent but uses conventions that are familiar
- * to programmers of the C-family of languages, including C, C++, C#, Java,
- * JavaScript, Perl, TCL, and many others. These properties make JSON an
- * ideal data-interchange language.
- * 
- * This package provides a simple encoder and decoder for JSON notation. It
- * is intended for use with client-side Javascript applications that make
- * use of HTTPRequest to perform server communication functions - data can
- * be encoded into JSON notation for use in a client-side javascript, or
- * decoded from incoming Javascript requests. JSON format is native to
- * Javascript, and can be directly eval()'ed with no further parsing
- * overhead
- *
- * All strings should be in ASCII or UTF-8 format!
- *
- * LICENSE: Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met: Redistributions of source code must retain the
- * above copyright notice, this list of conditions and the following
- * disclaimer. Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
- * NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
- * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
- * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
- * DAMAGE.
- * 
- * @category   
- * @package     Services_JSON
- * @author      Michal Migurski <mike-json at teczno.com>
- * @author      Matt Knapp <mdknapp[at]gmail[dot]com>
- * @author      Brett Stimmerman <brettstimmerman[at]gmail[dot]com>
- * @copyright   2005 Michal Migurski
- * @license     http://www.opensource.org/licenses/bsd-license.php
- * @link        http://pear.php.net/pepr/pepr-proposal-show.php?id=198
- */
-
-/**
- * Marker constant for Services_JSON::decode(), used to flag stack state
- */
-define('SERVICES_JSON_SLICE',   1);
-
-/**
- * Marker constant for Services_JSON::decode(), used to flag stack state
- */
-define('SERVICES_JSON_IN_STR',  2);
-
-/**
- * Marker constant for Services_JSON::decode(), used to flag stack state
- */
-define('SERVICES_JSON_IN_ARR',  4);
-
-/**
- * Marker constant for Services_JSON::decode(), used to flag stack state
- */
-define('SERVICES_JSON_IN_OBJ',  8);
-
-/**
- * Marker constant for Services_JSON::decode(), used to flag stack state
- */
-define('SERVICES_JSON_IN_CMT', 16);
-
-/**
- * Behavior switch for Services_JSON::decode()
- */
-define('SERVICES_JSON_LOOSE_TYPE', 10);
-
-/**
- * Behavior switch for Services_JSON::decode()
- */
-define('SERVICES_JSON_STRICT_TYPE', 11);
-
-/** 
- * Converts to and from JSON format.
- *
- * Brief example of use:
- *
- * <code>
- * // create a new instance of Services_JSON
- * $json = new Services_JSON();
- * 
- * // convert a complexe value to JSON notation, and send it to the browser
- * $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4)));
- * $output = $json->encode($value);
- *
- * print($output);
- * // prints: ["foo","bar",[1,2,"baz"],[3,[4]]]
- * 
- * // accept incoming POST data, assumed to be in JSON notation
- * $input = file_get_contents('php://input', 1000000);
- * $value = $json->decode($input);
- * </code>
- */
-class Services_JSON
-{
-   /**
-    * constructs a new JSON instance
-    *
-    * @param    int     $use    object behavior: when encoding or decoding,
-    *                           be loose or strict about object/array usage
-    *
-    *                           possible values:
-    *                           - SERVICES_JSON_STRICT_TYPE: strict typing, default.
-    *                                                        "{...}" syntax creates objects in decode().
-    *                           - SERVICES_JSON_LOOSE_TYPE:  loose typing.
-    *                                                        "{...}" syntax creates associative arrays in decode().
-    */
-    function Services_JSON($use = SERVICES_JSON_STRICT_TYPE)
-    {
-        $this->use = $use;
-    }
-
-   /**
-    * convert a string from one UTF-16 char to one UTF-8 char
-    *
-    * Normally should be handled by mb_convert_encoding, but
-    * provides a slower PHP-only method for installations
-    * that lack the multibye string extension.
-    *
-    * @param    string  $utf16  UTF-16 character
-    * @return   string  UTF-8 character
-    * @access   private
-    */
-    function utf162utf8($utf16)
-    {
-        // oh please oh please oh please oh please oh please
-        if(function_exists('mb_convert_encoding'))
-            return mb_convert_encoding($utf16, 'UTF-8', 'UTF-16');
-        
-        $bytes = (ord($utf16{0}) << 8) | ord($utf16{1});
-
-        switch(true) {
-            case ((0x7F & $bytes) == $bytes):
-                // this case should never be reached, because we are in ASCII range
-                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                return chr(0x7F & $bytes);
-
-            case (0x07FF & $bytes) == $bytes:
-                // return a 2-byte UTF-8 character
-                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                return chr(0xC0 | (($bytes >> 6) & 0x1F))
-                     . chr(0x80 | ($bytes & 0x3F));
-
-            case (0xFFFF & $bytes) == $bytes:
-                // return a 3-byte UTF-8 character
-                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                return chr(0xE0 | (($bytes >> 12) & 0x0F))
-                     . chr(0x80 | (($bytes >> 6) & 0x3F))
-                     . chr(0x80 | ($bytes & 0x3F));
-        }
-
-        // ignoring UTF-32 for now, sorry
-        return '';
-    }        
-
-   /**
-    * convert a string from one UTF-8 char to one UTF-16 char
-    *
-    * Normally should be handled by mb_convert_encoding, but
-    * provides a slower PHP-only method for installations
-    * that lack the multibye string extension.
-    *
-    * @param    string  $utf8   UTF-8 character
-    * @return   string  UTF-16 character
-    * @access   private
-    */
-    function utf82utf16($utf8)
-    {
-        // oh please oh please oh please oh please oh please
-        if(function_exists('mb_convert_encoding'))
-            return mb_convert_encoding($utf8, 'UTF-16', 'UTF-8');
-        
-        switch(strlen($utf8)) {
-            case 1:
-                // this case should never be reached, because we are in ASCII range
-                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                return $utf8;
-
-            case 2:
-                // return a UTF-16 character from a 2-byte UTF-8 char
-                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                return chr(0x07 & (ord($utf8{0}) >> 2))
-                     . chr((0xC0 & (ord($utf8{0}) << 6))
-                         | (0x3F & ord($utf8{1})));
-                
-            case 3:
-                // return a UTF-16 character from a 3-byte UTF-8 char
-                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                return chr((0xF0 & (ord($utf8{0}) << 4))
-                         | (0x0F & (ord($utf8{1}) >> 2)))
-                     . chr((0xC0 & (ord($utf8{1}) << 6))
-                         | (0x7F & ord($utf8{2})));
-        }
-
-        // ignoring UTF-32 for now, sorry
-        return '';
-    }        
-
-   /**
-    * encodes an arbitrary variable into JSON format
-    *
-    * @param    mixed   $var    any number, boolean, string, array, or object to be encoded.
-    *                           see argument 1 to Services_JSON() above for array-parsing behavior.
-    *                           if var is a strng, note that encode() always expects it
-    *                           to be in ASCII or UTF-8 format!
-    *
-    * @return   string  JSON string representation of input var
-    * @access   public
-    */
-    function encode($var)
-    {
-        switch (gettype($var)) {
-            case 'boolean':
-                return $var ? 'true' : 'false';
-            
-            case 'NULL':
-                return 'null';
-            
-            case 'integer':
-                return (int) $var;
-                
-            case 'double':
-            case 'float':
-                return (float) $var;
-                
-            case 'string':
-                // STRINGS ARE EXPECTED TO BE IN ASCII OR UTF-8 FORMAT
-                $ascii = '';
-                $strlen_var = strlen($var);
-
-               /*
-                * Iterate over every character in the string,
-                * escaping with a slash or encoding to UTF-8 where necessary
-                */
-                for ($c = 0; $c < $strlen_var; ++$c) {
-                    
-                    $ord_var_c = ord($var{$c});
-                    
-                    switch (true) {
-                        case $ord_var_c == 0x08:
-                            $ascii .= '\b';
-                            break;
-                        case $ord_var_c == 0x09:
-                            $ascii .= '\t';
-                            break;
-                        case $ord_var_c == 0x0A:
-                            $ascii .= '\n';
-                            break;
-                        case $ord_var_c == 0x0C:
-                            $ascii .= '\f';
-                            break;
-                        case $ord_var_c == 0x0D:
-                            $ascii .= '\r';
-                            break;
-
-                        case $ord_var_c == 0x22:
-                        case $ord_var_c == 0x2F:
-                        case $ord_var_c == 0x5C:
-                            // double quote, slash, slosh
-                            $ascii .= '\\'.$var{$c};
-                            break;
-                            
-                        case (($ord_var_c >= 0x20) && ($ord_var_c <= 0x7F)):
-                            // characters U-00000000 - U-0000007F (same as ASCII)
-                            $ascii .= $var{$c};
-                            break;
-                        
-                        case (($ord_var_c & 0xE0) == 0xC0):
-                            // characters U-00000080 - U-000007FF, mask 110XXXXX
-                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                            $char = pack('C*', $ord_var_c, ord($var{$c + 1}));
-                            $c += 1;
-                            $utf16 = $this->utf82utf16($char);
-                            $ascii .= sprintf('\u%04s', bin2hex($utf16));
-                            break;
-    
-                        case (($ord_var_c & 0xF0) == 0xE0):
-                            // characters U-00000800 - U-0000FFFF, mask 1110XXXX
-                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                            $char = pack('C*', $ord_var_c,
-                                         ord($var{$c + 1}),
-                                         ord($var{$c + 2}));
-                            $c += 2;
-                            $utf16 = $this->utf82utf16($char);
-                            $ascii .= sprintf('\u%04s', bin2hex($utf16));
-                            break;
-    
-                        case (($ord_var_c & 0xF8) == 0xF0):
-                            // characters U-00010000 - U-001FFFFF, mask 11110XXX
-                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                            $char = pack('C*', $ord_var_c,
-                                         ord($var{$c + 1}),
-                                         ord($var{$c + 2}),
-                                         ord($var{$c + 3}));
-                            $c += 3;
-                            $utf16 = $this->utf82utf16($char);
-                            $ascii .= sprintf('\u%04s', bin2hex($utf16));
-                            break;
-    
-                        case (($ord_var_c & 0xFC) == 0xF8):
-                            // characters U-00200000 - U-03FFFFFF, mask 111110XX
-                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                            $char = pack('C*', $ord_var_c,
-                                         ord($var{$c + 1}),
-                                         ord($var{$c + 2}),
-                                         ord($var{$c + 3}),
-                                         ord($var{$c + 4}));
-                            $c += 4;
-                            $utf16 = $this->utf82utf16($char);
-                            $ascii .= sprintf('\u%04s', bin2hex($utf16));
-                            break;
-    
-                        case (($ord_var_c & 0xFE) == 0xFC):
-                            // characters U-04000000 - U-7FFFFFFF, mask 1111110X
-                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                            $char = pack('C*', $ord_var_c,
-                                         ord($var{$c + 1}),
-                                         ord($var{$c + 2}),
-                                         ord($var{$c + 3}),
-                                         ord($var{$c + 4}),
-                                         ord($var{$c + 5}));
-                            $c += 5;
-                            $utf16 = $this->utf82utf16($char);
-                            $ascii .= sprintf('\u%04s', bin2hex($utf16));
-                            break;
-                    }
-                }
-                
-                return '"'.$ascii.'"';
-                
-            case 'array':
-               /*
-                * As per JSON spec if any array key is not an integer
-                * we must treat the the whole array as an object. We
-                * also try to catch a sparsely populated associative
-                * array with numeric keys here because some JS engines
-                * will create an array with empty indexes up to
-                * max_index which can cause memory issues and because
-                * the keys, which may be relevant, will be remapped
-                * otherwise.
-                * 
-                * As per the ECMA and JSON specification an object may
-                * have any string as a property. Unfortunately due to
-                * a hole in the ECMA specification if the key is a
-                * ECMA reserved word or starts with a digit the
-                * parameter is only accessible using ECMAScript's
-                * bracket notation.
-                */
-                
-                // treat as a JSON object  
-                if (is_array($var) && count($var) && (array_keys($var) !== range(0, sizeof($var) - 1))) {
-                    return '{' .
-                           join(',', array_map(array($this, 'name_value'),
-                                               array_keys($var),
-                                               array_values($var)))
-                           . '}';
-                }
-
-                // treat it like a regular array
-                return '[' . join(',', array_map(array($this, 'encode'), $var)) . ']';
-                
-            case 'object':
-                $vars = get_object_vars($var);
-                return '{' .
-                       join(',', array_map(array($this, 'name_value'),
-                                           array_keys($vars),
-                                           array_values($vars)))
-                       . '}';
-
-            default:
-                return '';
-        }
-    }
-    
-   /**
-    * array-walking function for use in generating JSON-formatted name-value pairs
-    *
-    * @param    string  $name   name of key to use
-    * @param    mixed   $value  reference to an array element to be encoded
-    *
-    * @return   string  JSON-formatted name-value pair, like '"name":value'
-    * @access   private
-    */
-    function name_value($name, $value)
-    {
-        return $this->encode(strval($name)) . ':' . $this->encode($value);
-    }        
-
-   /**
-    * reduce a string by removing leading and trailing comments and whitespace
-    *
-    * @param    $str    string      string value to strip of comments and whitespace
-    *
-    * @return   string  string value stripped of comments and whitespace
-    * @access   private
-    */
-    function reduce_string($str)
-    {
-        $str = preg_replace(array(
-        
-                // eliminate single line comments in '// ...' form
-                '#^\s*//(.+)$#m',
-    
-                // eliminate multi-line comments in '/* ... */' form, at start of string
-                '#^\s*/\*(.+)\*/#Us',
-    
-                // eliminate multi-line comments in '/* ... */' form, at end of string
-                '#/\*(.+)\*/\s*$#Us'
-    
-            ), '', $str);
-        
-        // eliminate extraneous space
-        return trim($str);
-    }
-
-   /**
-    * decodes a JSON string into appropriate variable
-    *
-    * @param    string  $str    JSON-formatted string
-    *
-    * @return   mixed   number, boolean, string, array, or object
-    *                   corresponding to given JSON input string.
-    *                   See argument 1 to Services_JSON() above for object-output behavior.
-    *                   Note that decode() always returns strings
-    *                   in ASCII or UTF-8 format!
-    * @access   public
-    */
-    function decode($str)
-    {
-        $str = $this->reduce_string($str);
-    
-        switch (strtolower($str)) {
-            case 'true':
-                return true;
-
-            case 'false':
-                return false;
-            
-            case 'null':
-                return null;
-            
-            default:
-                if (is_numeric($str)) {
-                    // Lookie-loo, it's a number
-
-                    // This would work on its own, but I'm trying to be
-                    // good about returning integers where appropriate:
-                    // return (float)$str;
-
-                    // Return float or int, as appropriate
-                    return ((float)$str == (integer)$str)
-                        ? (integer)$str
-                        : (float)$str;
-                    
-                } elseif (preg_match('/^("|\').*(\1)$/s', $str, $m) && $m[1] == $m[2]) {
-                    // STRINGS RETURNED IN UTF-8 FORMAT
-                    $delim = substr($str, 0, 1);
-                    $chrs = substr($str, 1, -1);
-                    $utf8 = '';
-                    $strlen_chrs = strlen($chrs);
-                    
-                    for ($c = 0; $c < $strlen_chrs; ++$c) {
-                    
-                        $substr_chrs_c_2 = substr($chrs, $c, 2);
-                        $ord_chrs_c = ord($chrs{$c});
-                        
-                        switch (true) {
-                            case $substr_chrs_c_2 == '\b':
-                                $utf8 .= chr(0x08);
-                                ++$c;
-                                break;
-                            case $substr_chrs_c_2 == '\t':
-                                $utf8 .= chr(0x09);
-                                ++$c;
-                                break;
-                            case $substr_chrs_c_2 == '\n':
-                                $utf8 .= chr(0x0A);
-                                ++$c;
-                                break;
-                            case $substr_chrs_c_2 == '\f':
-                                $utf8 .= chr(0x0C);
-                                ++$c;
-                                break;
-                            case $substr_chrs_c_2 == '\r':
-                                $utf8 .= chr(0x0D);
-                                ++$c;
-                                break;
-
-                            case $substr_chrs_c_2 == '\\"':
-                            case $substr_chrs_c_2 == '\\\'':
-                            case $substr_chrs_c_2 == '\\\\':
-                            case $substr_chrs_c_2 == '\\/':
-                                if (($delim == '"' && $substr_chrs_c_2 != '\\\'') ||
-                                   ($delim == "'" && $substr_chrs_c_2 != '\\"')) {
-                                    $utf8 .= $chrs{++$c};
-                                }
-                                break;
-                                
-                            case preg_match('/\\\u[0-9A-F]{4}/i', substr($chrs, $c, 6)):
-                                // single, escaped unicode character
-                                $utf16 = chr(hexdec(substr($chrs, ($c + 2), 2)))
-                                       . chr(hexdec(substr($chrs, ($c + 4), 2)));
-                                $utf8 .= $this->utf162utf8($utf16);
-                                $c += 5;
-                                break;
-        
-                            case ($ord_chrs_c >= 0x20) && ($ord_chrs_c <= 0x7F):
-                                $utf8 .= $chrs{$c};
-                                break;
-        
-                            case ($ord_chrs_c & 0xE0) == 0xC0:
-                                // characters U-00000080 - U-000007FF, mask 110XXXXX
-                                //see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                                $utf8 .= substr($chrs, $c, 2);
-                                ++$c;
-                                break;
-    
-                            case ($ord_chrs_c & 0xF0) == 0xE0:
-                                // characters U-00000800 - U-0000FFFF, mask 1110XXXX
-                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                                $utf8 .= substr($chrs, $c, 3);
-                                $c += 2;
-                                break;
-    
-                            case ($ord_chrs_c & 0xF8) == 0xF0:
-                                // characters U-00010000 - U-001FFFFF, mask 11110XXX
-                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                                $utf8 .= substr($chrs, $c, 4);
-                                $c += 3;
-                                break;
-    
-                            case ($ord_chrs_c & 0xFC) == 0xF8:
-                                // characters U-00200000 - U-03FFFFFF, mask 111110XX
-                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                                $utf8 .= substr($chrs, $c, 5);
-                                $c += 4;
-                                break;
-    
-                            case ($ord_chrs_c & 0xFE) == 0xFC:
-                                // characters U-04000000 - U-7FFFFFFF, mask 1111110X
-                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8
-                                $utf8 .= substr($chrs, $c, 6);
-                                $c += 5;
-                                break;
-
-                        }
-
-                    }
-                    
-                    return $utf8;
-                
-                } elseif (preg_match('/^\[.*\]$/s', $str) || preg_match('/^\{.*\}$/s', $str)) {
-                    // array, or object notation
-
-                    if ($str{0} == '[') {
-                        $stk = array(SERVICES_JSON_IN_ARR);
-                        $arr = array();
-                    } else {
-                        if ($this->use == SERVICES_JSON_LOOSE_TYPE) {
-                            $stk = array(SERVICES_JSON_IN_OBJ);
-                            $obj = array();
-                        } else {
-                            $stk = array(SERVICES_JSON_IN_OBJ);
-                            $obj = new stdClass();
-                        }
-                    }
-                    
-                    array_push($stk, array('what'  => SERVICES_JSON_SLICE,
-                                           'where' => 0,
-                                           'delim' => false));
-
-                    $chrs = substr($str, 1, -1);
-                    $chrs = $this->reduce_string($chrs);
-                    
-                    if ($chrs == '') {
-                        if (reset($stk) == SERVICES_JSON_IN_ARR) {
-                            return $arr;
-
-                        } else {
-                            return $obj;
-
-                        }
-                    }
-
-                    //print("\nparsing {$chrs}\n");
-                    
-                    $strlen_chrs = strlen($chrs);
-                    
-                    for ($c = 0; $c <= $strlen_chrs; ++$c) {
-                    
-                        $top = end($stk);
-                        $substr_chrs_c_2 = substr($chrs, $c, 2);
-                    
-                        if (($c == $strlen_chrs) || (($chrs{$c} == ',') && ($top['what'] == SERVICES_JSON_SLICE))) {
-                            // found a comma that is not inside a string, array, etc.,
-                            // OR we've reached the end of the character list
-                            $slice = substr($chrs, $top['where'], ($c - $top['where']));
-                            array_push($stk, array('what' => SERVICES_JSON_SLICE, 'where' => ($c + 1), 'delim' => false));
-                            //print("Found split at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n");
-
-                            if (reset($stk) == SERVICES_JSON_IN_ARR) {
-                                // we are in an array, so just push an element onto the stack
-                                array_push($arr, $this->decode($slice));
-
-                            } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) {
-                                // we are in an object, so figure
-                                // out the property name and set an
-                                // element in an associative array,
-                                // for now
-                                if (preg_match('/^\s*(["\'].*[^\\\]["\'])\s*:\s*(\S.*),?$/Uis', $slice, $parts)) {
-                                    // "name":value pair
-                                    $key = $this->decode($parts[1]);
-                                    $val = $this->decode($parts[2]);
-
-                                    if ($this->use == SERVICES_JSON_LOOSE_TYPE) {
-                                        $obj[$key] = $val;
-                                    } else {
-                                        $obj->$key = $val;
-                                    }
-                                } elseif (preg_match('/^\s*(\w+)\s*:\s*(\S.*),?$/Uis', $slice, $parts)) {
-                                    // name:value pair, where name is unquoted
-                                    $key = $parts[1];
-                                    $val = $this->decode($parts[2]);
-
-                                    if ($this->use == SERVICES_JSON_LOOSE_TYPE) {
-                                        $obj[$key] = $val;
-                                    } else {
-                                        $obj->$key = $val;
-                                    }
-                                }
-
-                            }
-
-                        } elseif ((($chrs{$c} == '"') || ($chrs{$c} == "'")) && ($top['what'] != SERVICES_JSON_IN_STR)) {
-                            // found a quote, and we are not inside a string
-                            array_push($stk, array('what' => SERVICES_JSON_IN_STR, 'where' => $c, 'delim' => $chrs{$c}));
-                            //print("Found start of string at {$c}\n");
-
-                        } elseif (($chrs{$c} == $top['delim']) &&
-                                 ($top['what'] == SERVICES_JSON_IN_STR) &&
-                                 (($chrs{$c - 1} != '\\') ||
-                                 ($chrs{$c - 1} == '\\' && $chrs{$c - 2} == '\\'))) {
-                            // found a quote, we're in a string, and it's not escaped
-                            array_pop($stk);
-                            //print("Found end of string at {$c}: ".substr($chrs, $top['where'], (1 + 1 + $c - $top['where']))."\n");
-
-                        } elseif (($chrs{$c} == '[') &&
-                                 in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) {
-                            // found a left-bracket, and we are in an array, object, or slice
-                            array_push($stk, array('what' => SERVICES_JSON_IN_ARR, 'where' => $c, 'delim' => false));
-                            //print("Found start of array at {$c}\n");
-
-                        } elseif (($chrs{$c} == ']') && ($top['what'] == SERVICES_JSON_IN_ARR)) {
-                            // found a right-bracket, and we're in an array
-                            array_pop($stk);
-                            //print("Found end of array at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n");
-
-                        } elseif (($chrs{$c} == '{') &&
-                                 in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) {
-                            // found a left-brace, and we are in an array, object, or slice
-                            array_push($stk, array('what' => SERVICES_JSON_IN_OBJ, 'where' => $c, 'delim' => false));
-                            //print("Found start of object at {$c}\n");
-
-                        } elseif (($chrs{$c} == '}') && ($top['what'] == SERVICES_JSON_IN_OBJ)) {
-                            // found a right-brace, and we're in an object
-                            array_pop($stk);
-                            //print("Found end of object at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n");
-
-                        } elseif (($substr_chrs_c_2 == '/*') &&
-                                 in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) {
-                            // found a comment start, and we are in an array, object, or slice
-                            array_push($stk, array('what' => SERVICES_JSON_IN_CMT, 'where' => $c, 'delim' => false));
-                            $c++;
-                            //print("Found start of comment at {$c}\n");
-
-                        } elseif (($substr_chrs_c_2 == '*/') && ($top['what'] == SERVICES_JSON_IN_CMT)) {
-                            // found a comment end, and we're in one now
-                            array_pop($stk);
-                            $c++;
-                            
-                            for ($i = $top['where']; $i <= $c; ++$i)
-                                $chrs = substr_replace($chrs, ' ', $i, 1);
-                            
-                            //print("Found end of comment at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n");
-
-                        }
-                    
-                    }
-                    
-                    if (reset($stk) == SERVICES_JSON_IN_ARR) {
-                        return $arr;
-
-                    } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) {
-                        return $obj;
-
-                    }
-                
-                }
-        }
-    }
-    
-}
-    
-?>
\ No newline at end of file
diff --git a/dojox/analytics/logger/dojoxAnalytics.php b/dojox/analytics/logger/dojoxAnalytics.php
deleted file mode 100644
index dfc7ac8..0000000
--- a/dojox/analytics/logger/dojoxAnalytics.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-	require_once("./JSON.php");
-
-	$filename = "./logs/analytics.log";
-	$json = new Services_JSON;
-
-	$id = $_REQUEST["id"];
-	$items = $json->decode($_REQUEST["data"]);
-
-	if (!$handle = fopen($filename, 'a+')) {
-		print '{error: "server error"}';
-		exit;
-	}
-
-	foreach($items as $i=>$item){
-		$item->_analyticsId = $id;
-		$item->_analyticsTimeStamp = time();
-		$log = $json->encode($item) . "\n";
-		fwrite($handle, $log);
-	}
-	
-	fclose($handle);
-
-	$response = "{'eventsRecieved': '" . sizeof($items) . "', 'id': '" . $id . "'}";
-	if ($_REQUEST["callback"]){
-		print htmlentities($_REQUEST["callback"]) . "(" . $response . ");";
-	}else{
-		print $response;
-	}
-	
-?>
diff --git a/dojox/charting/widget/Chart2D.js b/dojox/charting/widget/Chart2D.js
index 45d6b8e..f89f548 100644
--- a/dojox/charting/widget/Chart2D.js
+++ b/dojox/charting/widget/Chart2D.js
@@ -13,4 +13,4 @@
 	for documentation and information on getting the source.
 */
 
-if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0;},add:function(_1){if(this._hash[_1.id]){throw new Error("Tried to register widget with id=="+_1.id+" but that id is already registered");}this._hash[_1.id]=_1;this.length++;},remove:function(id){if(this._hash[id]){delete this._hash[id];this.length--;}},forEach:function(_2,_3 [...]
+if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0;},add:function(_1){if(this._hash[_1.id]){throw new Error("Tried to register widget with id=="+_1.id+" but that id is already registered");}this._hash[_1.id]=_1;this.length++;},remove:function(id){if(this._hash[id]){delete this._hash[id];this.length--;}},forEach:function(_2,_3 [...]
diff --git a/dojox/charting/widget/Chart2D.js.uncompressed.js b/dojox/charting/widget/Chart2D.js.uncompressed.js
index 30ed287..9543db5 100644
--- a/dojox/charting/widget/Chart2D.js.uncompressed.js
+++ b/dojox/charting/widget/Chart2D.js.uncompressed.js
@@ -245,7 +245,7 @@ dijit.getUniqueId = function(/*String*/widgetType){
 			(widgetType in dijit._widgetTypeCtr ?
 				++dijit._widgetTypeCtr[widgetType] : dijit._widgetTypeCtr[widgetType] = 0);
 	}while(dijit.byId(id));
-	return id; // String
+	return dijit._scopeName == "dijit" ? id : dijit._scopeName + "_" + id; // String
 };
 
 dijit.findWidgets = function(/*DomNode*/ root){
@@ -371,9 +371,16 @@ dijit.isTabNavigable = function(/*Element*/elem){
 						body = doc && doc.body;
 					return body && body.contentEditable == 'true';
 				}else{
-					doc = elem.contentWindow.document;
-					body = doc && doc.body;
-					return body && body.firstChild && body.firstChild.contentEditable == 'true';
+					// contentWindow.document isn't accessible within IE7/8
+					// if the iframe.src points to a foreign url and this
+					// page contains an element, that could get focus
+					try{
+						doc = elem.contentWindow.document;
+						body = doc && doc.body;
+						return body && body.firstChild && body.firstChild.contentEditable == 'true';
+					}catch(e){
+						return false;
+					}
 				}
 			default:
 				return elem.contentEditable == 'true';
diff --git a/dojox/editor/plugins/Breadcrumb.js b/dojox/editor/plugins/Breadcrumb.js
index 328c4dc..a35d2cf 100644
--- a/dojox/editor/plugins/Breadcrumb.js
+++ b/dojox/editor/plugins/Breadcrumb.js
@@ -19,7 +19,7 @@ dojo.require("dijit.Menu");
 dojo.require("dijit.MenuItem");
 dojo.require("dijit.MenuSeparator");
 dojo.experimental("dojox.editor.plugins.Breadcrumb");
-dojo.requireLocalization("dojox.editor.plugins","Breadcrumb",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","Breadcrumb",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins._BreadcrumbMenuTitle",[dijit._Widget,dijit._Templated,dijit._Contained],{templateString:"<tr><td dojoAttachPoint=\"title\" colspan=\"4\" class=\"dijitToolbar\" style=\"font-weight: bold; padding: 3px;\"></td></tr>",menuTitle:"",postCreate:function(){
 dojo.setSelectable(this.domNode,false);
 var _1=this.id+"_text";
diff --git a/dojox/editor/plugins/EntityPalette.js b/dojox/editor/plugins/EntityPalette.js
index 8943ef0..88749ef 100644
--- a/dojox/editor/plugins/EntityPalette.js
+++ b/dojox/editor/plugins/EntityPalette.js
@@ -11,7 +11,7 @@ dojo.provide("dojox.editor.plugins.EntityPalette");
 dojo.require("dijit._Widget");
 dojo.require("dijit._Templated");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","latinEntities",null,"ROOT");
+dojo.requireLocalization("dojox.editor.plugins","latinEntities",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.experimental("dojox.editor.plugins.EntityPalette");
 dojo.declare("dojox.editor.plugins.EntityPalette",[dijit._Widget,dijit._Templated],{templateString:"<div class=\"dojoxEntityPalette\">\n"+"\t<table>\n"+"\t\t<tbody>\n"+"\t\t\t<tr>\n"+"\t\t\t\t<td>\n"+"\t\t\t\t\t<table class=\"dojoxEntityPaletteTable\"  waiRole=\"grid\" tabIndex=\"${tabIndex}\">\n"+"\t\t\t\t\t\t<tbody dojoAttachPoint=\"tableNode\"></tbody>\n"+"\t\t\t\t\t</table>\n"+"\t\t\t\t</td>\n"+"\t\t\t</tr>\n"+"\t\t\t<tr>\n"+"\t\t\t\t<td>\n"+"\t\t\t\t\t<table dojoAttachPoint=\"previe [...]
 if(!this._created){
diff --git a/dojox/editor/plugins/FindReplace.js b/dojox/editor/plugins/FindReplace.js
index 98b1214..0185d99 100644
--- a/dojox/editor/plugins/FindReplace.js
+++ b/dojox/editor/plugins/FindReplace.js
@@ -19,7 +19,7 @@ dojo.require("dijit.CheckedMenuItem");
 dojo.require("dojox.editor.plugins.ToolbarLineBreak");
 dojo.require("dojo.i18n");
 dojo.require("dojo.string");
-dojo.requireLocalization("dojox.editor.plugins","FindReplace",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","FindReplace",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.experimental("dojox.editor.plugins.FindReplace");
 dojo.declare("dojox.editor.plugins._FindReplaceTextBox",[dijit._Widget,dijit._Templated],{textId:"",label:"",widget:null,widgetsInTemplate:true,templateString:"<span style='white-space: nowrap' class='dijit dijitReset dijitInline findReplaceTextBox'>"+"<label class='dijitLeft dijitInline' for='${textId}'>${label}</label>"+"<input dojoType='dijit.form.TextBox' required=false intermediateChanges='true'"+"tabIndex='-1' id='${textId}' dojoAttachPoint='textBox' value='' style='width: 20em;'/> [...]
 this.inherited(arguments);
diff --git a/dojox/editor/plugins/InsertEntity.js b/dojox/editor/plugins/InsertEntity.js
index fe82670..dd80924 100644
--- a/dojox/editor/plugins/InsertEntity.js
+++ b/dojox/editor/plugins/InsertEntity.js
@@ -14,7 +14,7 @@ dojo.require("dijit.TooltipDialog");
 dojo.require("dojox.editor.plugins.EntityPalette");
 dojo.require("dojox.html.entities");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","InsertEntity",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","InsertEntity",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins.InsertEntity",dijit._editor._Plugin,{iconClassPrefix:"dijitAdditionalEditorIcon",_initButton:function(){
 this.dropDown=new dojox.editor.plugins.EntityPalette({showCode:this.showCode,showEntityName:this.showEntityName});
 this.connect(this.dropDown,"onChange",function(_1){
diff --git a/dojox/editor/plugins/PageBreak.js b/dojox/editor/plugins/PageBreak.js
index 19dbed8..8ea179f 100644
--- a/dojox/editor/plugins/PageBreak.js
+++ b/dojox/editor/plugins/PageBreak.js
@@ -10,7 +10,7 @@ dojo._hasResource["dojox.editor.plugins.PageBreak"]=true;
 dojo.provide("dojox.editor.plugins.PageBreak");
 dojo.require("dijit._editor._Plugin");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","PageBreak",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","PageBreak",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins.PageBreak",dijit._editor._Plugin,{useDefaultCommand:false,iconClassPrefix:"dijitAdditionalEditorIcon",_unbreakableNodes:["li","ul","ol"],_pbContent:"<hr style='page-break-after: always;' class='dijitEditorPageBreak'>",_initButton:function(){
 var ed=this.editor;
 var _1=dojo.i18n.getLocalization("dojox.editor.plugins","PageBreak");
diff --git a/dojox/editor/plugins/Preview.js b/dojox/editor/plugins/Preview.js
index 33145f5..3076a6e 100644
--- a/dojox/editor/plugins/Preview.js
+++ b/dojox/editor/plugins/Preview.js
@@ -11,7 +11,7 @@ dojo.provide("dojox.editor.plugins.Preview");
 dojo.require("dijit._editor._Plugin");
 dojo.require("dijit.form.Button");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","Preview",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","Preview",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins.Preview",dijit._editor._Plugin,{useDefaultCommand:false,styles:"",stylesheets:null,iconClassPrefix:"dijitAdditionalEditorIcon",_initButton:function(){
 this._nlsResources=dojo.i18n.getLocalization("dojox.editor.plugins","Preview");
 this.button=new dijit.form.Button({label:this._nlsResources["preview"],showLabel:false,iconClass:this.iconClassPrefix+" "+this.iconClassPrefix+"Preview",tabIndex:"-1",onClick:dojo.hitch(this,"_preview")});
diff --git a/dojox/editor/plugins/Save.js b/dojox/editor/plugins/Save.js
index 6f7c253..97ad907 100644
--- a/dojox/editor/plugins/Save.js
+++ b/dojox/editor/plugins/Save.js
@@ -11,7 +11,7 @@ dojo.provide("dojox.editor.plugins.Save");
 dojo.require("dijit._editor._Plugin");
 dojo.require("dijit.form.Button");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","Save",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","Save",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins.Save",dijit._editor._Plugin,{iconClassPrefix:"dijitAdditionalEditorIcon",url:"",logResults:true,_initButton:function(){
 var _1=dojo.i18n.getLocalization("dojox.editor.plugins","Save");
 this.button=new dijit.form.Button({label:_1["save"],showLabel:false,iconClass:this.iconClassPrefix+" "+this.iconClassPrefix+"Save",tabIndex:"-1",onClick:dojo.hitch(this,"_save")});
diff --git a/dojox/editor/plugins/ShowBlockNodes.js b/dojox/editor/plugins/ShowBlockNodes.js
index 802d818..475ef77 100644
--- a/dojox/editor/plugins/ShowBlockNodes.js
+++ b/dojox/editor/plugins/ShowBlockNodes.js
@@ -11,7 +11,7 @@ dojo.provide("dojox.editor.plugins.ShowBlockNodes");
 dojo.require("dijit._editor._Plugin");
 dojo.require("dijit.form.Button");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","ShowBlockNodes",null,"ROOT,ko");
+dojo.requireLocalization("dojox.editor.plugins","ShowBlockNodes",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins.ShowBlockNodes",dijit._editor._Plugin,{useDefaultCommand:false,iconClassPrefix:"dijitAdditionalEditorIcon",_styled:false,_initButton:function(){
 var _1=dojo.i18n.getLocalization("dojox.editor.plugins","ShowBlockNodes");
 this.button=new dijit.form.ToggleButton({label:_1["showBlockNodes"],showLabel:false,iconClass:this.iconClassPrefix+" "+this.iconClassPrefix+"ShowBlockNodes",tabIndex:"-1",onChange:dojo.hitch(this,"_showBlocks")});
diff --git a/dojox/editor/plugins/Smiley.js b/dojox/editor/plugins/Smiley.js
index 6cf3f48..d6cb95e 100644
--- a/dojox/editor/plugins/Smiley.js
+++ b/dojox/editor/plugins/Smiley.js
@@ -14,7 +14,7 @@ dojo.require("dijit._editor._Plugin");
 dojo.require("dijit.form.ToggleButton");
 dojo.require("dijit.form.DropDownButton");
 dojo.require("dojox.editor.plugins._SmileyPalette");
-dojo.requireLocalization("dojox.editor.plugins","Smiley",null,"ROOT");
+dojo.requireLocalization("dojox.editor.plugins","Smiley",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.declare("dojox.editor.plugins.Smiley",dijit._editor._Plugin,{iconClassPrefix:"dijitAdditionalEditorIcon",_initButton:function(){
 this.dropDown=new dojox.editor.plugins._SmileyPalette();
 this.connect(this.dropDown,"onChange",function(_1){
diff --git a/dojox/editor/plugins/_SmileyPalette.js b/dojox/editor/plugins/_SmileyPalette.js
index 2fc0d52..8d46478 100644
--- a/dojox/editor/plugins/_SmileyPalette.js
+++ b/dojox/editor/plugins/_SmileyPalette.js
@@ -11,7 +11,7 @@ dojo.provide("dojox.editor.plugins._SmileyPalette");
 dojo.require("dijit._Widget");
 dojo.require("dijit._Templated");
 dojo.require("dojo.i18n");
-dojo.requireLocalization("dojox.editor.plugins","Smiley",null,"ROOT");
+dojo.requireLocalization("dojox.editor.plugins","Smiley",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.experimental("dojox.editor.plugins._SmileyPalette");
 dojo.declare("dojox.editor.plugins._SmileyPalette",[dijit._Widget,dijit._Templated],{templateString:"<div class=\"dojoxEntityPalette\">\n"+"<table>\n"+"<tbody>\n"+"<tr>\n"+"<td>\n"+"<table class=\"dojoxEntityPaletteTable\"  waiRole=\"grid\" tabIndex=\"${tabIndex}\">\n"+"<tbody dojoAttachPoint=\"tableNode\"></tbody>\n"+"</table>\n"+"</td>\n"+"</tr>\n"+"</tbody>\n"+"</table>\n"+"</div>",defaultTimeout:500,timeoutChangeRate:0.9,smileys:{emoticonSmile:":-)",emoticonLaughing:"lol",emoticonWin [...]
 if(!this._created){
diff --git a/dojox/editor/plugins/nls/cs/Breadcrumb.js b/dojox/editor/plugins/nls/cs/Breadcrumb.js
new file mode 100644
index 0000000..b863ff3
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Vybrat obsah","deleteElement":"Odstranit prvek","moveEnd":"Přesunout ukazatel na konec","deleteContents":"Odstranit obsah","nodeActions":"Akce uzlu ${nodeName}","selectElement":"Vybrat prvek","moveStart":"Přesunout ukazatel na začátek"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/FindReplace.js b/dojox/editor/plugins/nls/cs/FindReplace.js
new file mode 100644
index 0000000..0760ad2
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"V opačném směru","findReplace":"Přepnout hledání/nahrazování","replaceAll":"Všechny výskyty","replaceDialogText":"Počet nahrazených výskytů: ${0}. ","replaceButton":"Nahradit","findButton":"Najít","findLabel":"Hledaný řetězec:","matchCase":"S rozlišením velkých a malých písmen","replaceLabel":"Nahrazující řetězec:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/InsertEntity.js b/dojox/editor/plugins/nls/cs/InsertEntity.js
new file mode 100644
index 0000000..a6b1acc
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Vložit symbol"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/PageBreak.js b/dojox/editor/plugins/nls/cs/PageBreak.js
new file mode 100644
index 0000000..a762c2a
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Zalomení stránky"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/Preview.js b/dojox/editor/plugins/nls/cs/Preview.js
new file mode 100644
index 0000000..851fd45
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/Preview.js
@@ -0,0 +1 @@
+({"preview":"Náhled"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/Save.js b/dojox/editor/plugins/nls/cs/Save.js
new file mode 100644
index 0000000..5fb74e1
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/Save.js
@@ -0,0 +1 @@
+({"save":"Uložit"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/ShowBlockNodes.js b/dojox/editor/plugins/nls/cs/ShowBlockNodes.js
new file mode 100644
index 0000000..3310a6f
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Zobrazit prvky bloku kódu HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/Smiley.js b/dojox/editor/plugins/nls/cs/Smiley.js
new file mode 100644
index 0000000..946f6f4
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"smích","emoticonCool":"skvělé","emoticonTongue":"jazyk","emoticonCrying":"pláč","emoticonOops":"ouha","emoticonFrown":"zamračení","emoticonAngry":"hněv","emoticonShy":"stud","emoticonNo":"ne","emoticonAngel":"anděl","smiley":"Vložit emotikonu","emoticonIdea":"nápad","emoticonEyebrow":"obočí","emoticonSmile":"úsměv","emoticonWink":"mrknutí","emoticonYes":"ano","emoticonGrin":"úšklebek","emoticonGoofy":"potrhlost","emoticonHalf":"polovina"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/cs/latinEntities.js b/dojox/editor/plugins/nls/cs/latinEntities.js
new file mode 100644
index 0000000..0b7e63e
--- /dev/null
+++ b/dojox/editor/plugins/nls/cs/latinEntities.js
@@ -0,0 +1 @@
+({"le":"menší než nebo rovno","prod":"n-ární součin\nznak součin","zwj":"spojení, nulová šířka","mdash":"dlouhá pomlčka","frasl":"lomítko u zlomků","upsih":"symbol řeckého písmena ypsilon se zahnutým háčkem","prop":"úměrné","middot":"tečka uprostřed","hellip":"vodorovná výpustka\ntři tečky","eta":"malé řecké písmeno éta","iacute":"malé písmeno i s čárkou","yen":"znak yen\nznak yuan","rlm":"značka směru zprava doleva","macr":"nadtržítko","ldquo":"levé uvozovky","Icirc":"velké písmeno I se [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/Breadcrumb.js b/dojox/editor/plugins/nls/de/Breadcrumb.js
new file mode 100644
index 0000000..2c35bc0
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Inhalt auswählen","deleteElement":"Element löschen","moveEnd":"Cursor an Ende verschieben","deleteContents":"Inhalt löschen","nodeActions":"Aktionen für ${nodeName}","selectElement":"Element auswählen","moveStart":"Cursor an Anfang verschieben"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/FindReplace.js b/dojox/editor/plugins/nls/de/FindReplace.js
new file mode 100644
index 0000000..25b4d43
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Zurück","findReplace":"Suchen/Ersetzen","replaceAll":"Alle Vorkommen","replaceDialogText":"Es wurden ${0} Vorkommen ersetzt.","replaceButton":"Ersetzen","findButton":"Suchen","findLabel":"Suchbegriff:","matchCase":"Groß- und Kleinschreibung abgleichen","replaceLabel":"Ersetzen durch:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/InsertEntity.js b/dojox/editor/plugins/nls/de/InsertEntity.js
new file mode 100644
index 0000000..4830561
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Symbol einfügen"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/PageBreak.js b/dojox/editor/plugins/nls/de/PageBreak.js
new file mode 100644
index 0000000..14a0ea2
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Seitenumbruch"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/Preview.js b/dojox/editor/plugins/nls/de/Preview.js
new file mode 100644
index 0000000..396d562
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/Preview.js
@@ -0,0 +1 @@
+({"preview":"Vorschau"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/Save.js b/dojox/editor/plugins/nls/de/Save.js
new file mode 100644
index 0000000..50af5b1
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/Save.js
@@ -0,0 +1 @@
+({"save":"Speichern"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/ShowBlockNodes.js b/dojox/editor/plugins/nls/de/ShowBlockNodes.js
new file mode 100644
index 0000000..6a17d87
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"HTML-Blockelemente anzeigen"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/Smiley.js b/dojox/editor/plugins/nls/de/Smiley.js
new file mode 100644
index 0000000..07306d1
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"Lachen","emoticonCool":"Cool","emoticonTongue":"Zunge","emoticonCrying":"Weinen","emoticonOops":"Hoppla","emoticonFrown":"Stirnrunzeln","emoticonAngry":"Zornig","emoticonShy":"Schüchtern","emoticonNo":"Nein","emoticonAngel":"Engel","smiley":"Emoticon einfügen","emoticonIdea":"Idee","emoticonEyebrow":"Hochgezogene Augenbraue","emoticonSmile":"Lächeln","emoticonWink":"Augenzwinkern","emoticonYes":"Ja","emoticonGrin":"Grinsen","emoticonGoofy":"Albern","emoticonHalf":"Halb"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/TableDialog.js b/dojox/editor/plugins/nls/de/TableDialog.js
index 2ad099f..8e84d89 100644
--- a/dojox/editor/plugins/nls/de/TableDialog.js
+++ b/dojox/editor/plugins/nls/de/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Festlegen","insertTableTitle":"Tabelle einfügen","insertTableRowAfterLabel":"Zeile danach einfügen","center":"Mitte","deleteTableColumnLabel":"Spalte löschen","right":"Rechts","insertTableColumnBeforeLabel":"Spalte davor einfügen","tableWidth":"Tabellenbreite:","buttonInsert":"Einfügen","default":"Standard","align":"Ausrichten:","insertTableRowBeforeLabel":"Zeile davor einfügen","cellSpacing":"Zellenabstand:","pixels":"Pixel","selectTableLabel":"Tabelle auswählen","rows":" [...]
\ No newline at end of file
+({"buttonSet":"Festlegen","insertTableTitle":"Tabelle einfügen","insertTableRowAfterLabel":"Zeile unterhalb einfügen","center":"Mitte","deleteTableColumnLabel":"Spalte löschen","right":"Rechts","insertTableColumnBeforeLabel":"Spalte oberhalb einfügen","tableWidth":"Tabellenbreite:","buttonInsert":"Einfügen","default":"Standard","align":"Ausrichten:","insertTableRowBeforeLabel":"Zeile oberhalb einfügen","cellSpacing":"Zellenabstand:","pixels":"Pixel","selectTableLabel":"Tabelle auswählen" [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/de/latinEntities.js b/dojox/editor/plugins/nls/de/latinEntities.js
new file mode 100644
index 0000000..e8b26e9
--- /dev/null
+++ b/dojox/editor/plugins/nls/de/latinEntities.js
@@ -0,0 +1 @@
+({"le":"Kleiner-gleich","prod":"unäres Produkt\nProduktzeichen","zwj":"Verbinder mit Nullbreite","mdash":"Gedankenstrich von der Länge des Buchstabens m","frasl":"Schrägstrich für Bruch","upsih":"Griechisches Upsilon mit Haken","prop":"proportional zu","middot":"Multiplikationszeichen\nGeorgisches Komma\nGriechisches Multiplikationszeichen","hellip":"Auslassung\nDrei kleine Punkte","eta":"Griechischer Kleinbuchstabe Eta","iacute":"Kleinbuchstabe i mit Aktut","yen":"Yen-ZeichenNyuan-Zeich [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/Breadcrumb.js b/dojox/editor/plugins/nls/es/Breadcrumb.js
new file mode 100644
index 0000000..ce8cc3b
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Seleccionar contenido","deleteElement":"Suprimir elemento","moveEnd":"Mover cursor al final","deleteContents":"Suprimir contenido","nodeActions":"Acciones de ${nodeName}","selectElement":"Seleccionar elemento","moveStart":"Mover cursor al inicio"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/FindReplace.js b/dojox/editor/plugins/nls/es/FindReplace.js
new file mode 100644
index 0000000..f5bed74
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Hacia atrás","findReplace":"Conmutar Buscar/Sustituir","replaceAll":"Todas las apariciones","replaceDialogText":"Se han sustituido ${0} apariciones.","replaceButton":"Sustituir","findButton":"Buscar","findLabel":"Buscar:","matchCase":"Coincidir mayúsculas y minúsculas","replaceLabel":"Sustituir por:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/InsertEntity.js b/dojox/editor/plugins/nls/es/InsertEntity.js
new file mode 100644
index 0000000..5d5fd22
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Insertar símbolo"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/PageBreak.js b/dojox/editor/plugins/nls/es/PageBreak.js
new file mode 100644
index 0000000..1e97e81
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Salto de página"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/Preview.js b/dojox/editor/plugins/nls/es/Preview.js
new file mode 100644
index 0000000..ba400f6
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/Preview.js
@@ -0,0 +1 @@
+({"preview":"Previsualización"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/Save.js b/dojox/editor/plugins/nls/es/Save.js
new file mode 100644
index 0000000..426ca84
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/Save.js
@@ -0,0 +1 @@
+({"save":"Guardar"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/ShowBlockNodes.js b/dojox/editor/plugins/nls/es/ShowBlockNodes.js
new file mode 100644
index 0000000..ef0570f
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Mostrar elementos de bloque HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/Smiley.js b/dojox/editor/plugins/nls/es/Smiley.js
new file mode 100644
index 0000000..b0025d0
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"risa","emoticonCool":"guay","emoticonTongue":"burlón","emoticonCrying":"llorando","emoticonOops":"lo siento","emoticonFrown":"ceño fruncido","emoticonAngry":"enfadado","emoticonShy":"tímido","emoticonNo":"no","emoticonAngel":"ángel","smiley":"Insertar emoticono","emoticonIdea":"idea","emoticonEyebrow":"ceja levantada","emoticonSmile":"sonrisa","emoticonWink":"guiño","emoticonYes":"sí","emoticonGrin":"carcajada","emoticonGoofy":"patoso","emoticonHalf":"escéptico"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/TableDialog.js b/dojox/editor/plugins/nls/es/TableDialog.js
index a170cf2..db69bbf 100644
--- a/dojox/editor/plugins/nls/es/TableDialog.js
+++ b/dojox/editor/plugins/nls/es/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Establecer","insertTableTitle":"Insertar tabla","insertTableRowAfterLabel":"Añadir tabla detrás","center":"centro","deleteTableColumnLabel":"Suprimir columna","right":"derecha","insertTableColumnBeforeLabel":"Añadir columna delante","tableWidth":"Ancho de tabla:","buttonInsert":"Insertar","default":"predeterminado","align":"Alinear:","insertTableRowBeforeLabel":"Añadir tabla delante","cellSpacing":"Espaciado de celda:","pixels":"píxeles","selectTableLabel":"Seleccionar tab [...]
\ No newline at end of file
+({"buttonSet":"Establecer","insertTableTitle":"Insertar tabla","insertTableRowAfterLabel":"Añadir fila después","center":"centro","deleteTableColumnLabel":"Suprimir columna","right":"derecha","insertTableColumnBeforeLabel":"Añadir columna antes","tableWidth":"Ancho de tabla:","buttonInsert":"Insertar","default":"default","align":"Alinear:","insertTableRowBeforeLabel":"Añadir fila antes","cellSpacing":"Espaciado de celda:","pixels":"píxeles","selectTableLabel":"Seleccionar tabla","rows":" [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/es/latinEntities.js b/dojox/editor/plugins/nls/es/latinEntities.js
new file mode 100644
index 0000000..ecc7b5f
--- /dev/null
+++ b/dojox/editor/plugins/nls/es/latinEntities.js
@@ -0,0 +1 @@
+({"le":"menor o igual que","prod":"productoria\nmultiplicatoria","zwj":"conector de anchura cero","mdash":"guión largo","frasl":"barra de fracción","upsih":"símbolo de letra ípsilon griega con gancho","prop":"proporcional","middot":"punto medio\ncoma georgiana\npunto medio griego","hellip":"puntos suspensivos","eta":"letra eta griega minúscula","iacute":"letra i latina minúscula con acento agudo","yen":"símbolo del yen\nsímbolo de yuan","rlm":"marca de derecha a izquierda","macr":"macrón [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/Breadcrumb.js b/dojox/editor/plugins/nls/fr/Breadcrumb.js
new file mode 100644
index 0000000..98a2dcf
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Sélection de contenus","deleteElement":"Suppression d'un élément","moveEnd":"Déplacer le curseur vers la fin","deleteContents":"Suppression de contenus","nodeActions":"Actions ${nodeName}","selectElement":"Sélection d'un élément","moveStart":"Déplacer le curseur vers le début"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/FindReplace.js b/dojox/editor/plugins/nls/fr/FindReplace.js
new file mode 100644
index 0000000..b3514ad
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Vers l'arrière","findReplace":"Rechercher/Remplacer","replaceAll":"Toutes les occurrences","replaceDialogText":"${0} occurrence(s) remplacée(s).","replaceButton":"Remplacer","findButton":"Rechercher","findLabel":"Que rechercher :","matchCase":"Respecter la casse","replaceLabel":"Remplacer par :"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/InsertEntity.js b/dojox/editor/plugins/nls/fr/InsertEntity.js
new file mode 100644
index 0000000..9cdf961
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Insertion d'un symbole"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/PageBreak.js b/dojox/editor/plugins/nls/fr/PageBreak.js
new file mode 100644
index 0000000..f7e2e6f
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Saut de page"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/Preview.js b/dojox/editor/plugins/nls/fr/Preview.js
new file mode 100644
index 0000000..73d24e6
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/Preview.js
@@ -0,0 +1 @@
+({"preview":"Aperçu"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/Save.js b/dojox/editor/plugins/nls/fr/Save.js
new file mode 100644
index 0000000..74657ea
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/Save.js
@@ -0,0 +1 @@
+({"save":"Sauvegarder"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/ShowBlockNodes.js b/dojox/editor/plugins/nls/fr/ShowBlockNodes.js
new file mode 100644
index 0000000..243cda5
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Affichage des éléments de bloc HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/Smiley.js b/dojox/editor/plugins/nls/fr/Smiley.js
new file mode 100644
index 0000000..1c0ae69
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"rire","emoticonCool":"calme","emoticonTongue":"langue","emoticonCrying":"pleurs","emoticonOops":"oops","emoticonFrown":"froncement de sourcils","emoticonAngry":"colère","emoticonShy":"timide","emoticonNo":"non","emoticonAngel":"ange","smiley":"Insérer une émoticône","emoticonIdea":"idée","emoticonEyebrow":"sourcils","emoticonSmile":"sourire","emoticonWink":"clin d'oeil","emoticonYes":"oui","emoticonGrin":"sourire large","emoticonGoofy":"dingo","emoticonHalf":"demi"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/TableDialog.js b/dojox/editor/plugins/nls/fr/TableDialog.js
index f637e7e..72b0ef3 100644
--- a/dojox/editor/plugins/nls/fr/TableDialog.js
+++ b/dojox/editor/plugins/nls/fr/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Définir","insertTableTitle":"Insérer un tableau","insertTableRowAfterLabel":"Ajouter une ligne après","center":"centré","deleteTableColumnLabel":"Supprimer la colonne","right":"aligné à droite","insertTableColumnBeforeLabel":"Ajouter une colonne avant","tableWidth":"Largeur de table :","buttonInsert":"Insérer","default":"par défaut","align":"Aligner :","insertTableRowBeforeLabel":"Ajouter une ligne avant","cellSpacing":"Espacement des cellules :","pixels":"pixels","selectT [...]
\ No newline at end of file
+({"buttonSet":"Définir","insertTableTitle":"Insertion d'une table","insertTableRowAfterLabel":"Ajouter une ligne après","center":"au centre","deleteTableColumnLabel":"Supprimer une colonne","right":"à droite","insertTableColumnBeforeLabel":"Ajouter une colonne avant","tableWidth":"Largeur de la table :","buttonInsert":"Insérer","default":"valeur par défaut","align":"Aligner :","insertTableRowBeforeLabel":"Ajouter une ligne avant","cellSpacing":"Espacement des cellules :","pixels":"pixels [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/fr/latinEntities.js b/dojox/editor/plugins/nls/fr/latinEntities.js
new file mode 100644
index 0000000..ad0b1e1
--- /dev/null
+++ b/dojox/editor/plugins/nls/fr/latinEntities.js
@@ -0,0 +1 @@
+({"le":"inférieur ou égal à","prod":"produit n-aire\nsigne produit","zwj":"liant sans chasse","mdash":"tiret cadratin","frasl":"barre de fraction","upsih":"Greek - upsilon avec symbole de crochet","prop":"proportionnel à","middot":"point médian\nvirgule géorgiennea\npoint médian grec","hellip":"points de suspension\ntrois points de conduite","eta":"Grec - eta minuscule","iacute":"Latin - i minuscule avec accent aigu","yen":"signe yen\nsigne yuan","rlm":"marque de droite à gauche","macr": [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/Breadcrumb.js b/dojox/editor/plugins/nls/hu/Breadcrumb.js
new file mode 100644
index 0000000..84ba939
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Tartalom kiválasztása","deleteElement":"Elem törlése","moveEnd":"Kurzor mozgatása a végére","deleteContents":"Tartalom törlése","nodeActions":"${nodeName} műveletek","selectElement":"Elem kiválasztása","moveStart":"Kurzor mozgatása az elejére"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/FindReplace.js b/dojox/editor/plugins/nls/hu/FindReplace.js
new file mode 100644
index 0000000..fd05617
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Visszafelé","findReplace":"Keresés/Csere váltása","replaceAll":"Minden előfordulás","replaceDialogText":"${0} előfordulás cseréje megtörtént. ","replaceButton":"Csere","findButton":"Keresés","findLabel":"Keresés: ","matchCase":"Kis- és nagybetűk egyeztetése","replaceLabel":"Csere: "})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/InsertEntity.js b/dojox/editor/plugins/nls/hu/InsertEntity.js
new file mode 100644
index 0000000..6640c05
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Szimbólum beszúrása"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/PageBreak.js b/dojox/editor/plugins/nls/hu/PageBreak.js
new file mode 100644
index 0000000..5b9cd97
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Oldaltörés"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/Preview.js b/dojox/editor/plugins/nls/hu/Preview.js
new file mode 100644
index 0000000..44233d5
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/Preview.js
@@ -0,0 +1 @@
+({"preview":"Előzetes"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/Save.js b/dojox/editor/plugins/nls/hu/Save.js
new file mode 100644
index 0000000..be39803
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/Save.js
@@ -0,0 +1 @@
+({"save":"Mentés"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/ShowBlockNodes.js b/dojox/editor/plugins/nls/hu/ShowBlockNodes.js
new file mode 100644
index 0000000..16927f5
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"HTML blokk elemek megjelenítése"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/Smiley.js b/dojox/editor/plugins/nls/hu/Smiley.js
new file mode 100644
index 0000000..6216584
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"nevetés","emoticonCool":"laza","emoticonTongue":"nyelv","emoticonCrying":"sírás","emoticonOops":"hoppá","emoticonFrown":"rosszallás","emoticonAngry":"mérges","emoticonShy":"szégyenlős","emoticonNo":"nem","emoticonAngel":"angyal","smiley":"Hangulatjel beszúrása","emoticonIdea":"ötlet","emoticonEyebrow":"szemöldök","emoticonSmile":"mosoly","emoticonWink":"kacsintás","emoticonYes":"igen","emoticonGrin":"vigyor","emoticonGoofy":"ostoba","emoticonHalf":"fél"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/TableDialog.js b/dojox/editor/plugins/nls/hu/TableDialog.js
index cff14fb..5a815f4 100644
--- a/dojox/editor/plugins/nls/hu/TableDialog.js
+++ b/dojox/editor/plugins/nls/hu/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Beállítás","insertTableTitle":"Táblázat beszúrása","insertTableRowAfterLabel":"Sor hozzáadása utána","center":"középre","deleteTableColumnLabel":"Oszlop törlése","right":"jobbra","insertTableColumnBeforeLabel":"Oszlop hozzáadása elé","tableWidth":"Táblázat szélessége:","buttonInsert":"Beszúrás","default":"alapértelmezés","align":"Igazítás:","insertTableRowBeforeLabel":"Sor hozzáadása elé","cellSpacing":"Cellatávolság:","pixels":"pixel","selectTableLabel":"Táblázat kiválasz [...]
\ No newline at end of file
+({"buttonSet":"Beállítás","insertTableTitle":"Táblázat beszúrása","insertTableRowAfterLabel":"Sor hozzáadása utána","center":"középre","deleteTableColumnLabel":"Oszlop törlése","right":"jobbra","insertTableColumnBeforeLabel":"Oszlop hozzáadása előtte","tableWidth":"Táblázat szélessége: ","buttonInsert":"Beszúrás","default":"alapértelmezett","align":"Igazítás: ","insertTableRowBeforeLabel":"Sor hozzáadása előtte","cellSpacing":"Cella térköz: ","pixels":"képpont","selectTableLabel":"Tábláz [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/hu/latinEntities.js b/dojox/editor/plugins/nls/hu/latinEntities.js
new file mode 100644
index 0000000..6d98833
--- /dev/null
+++ b/dojox/editor/plugins/nls/hu/latinEntities.js
@@ -0,0 +1 @@
+({"le":"kisebb vagy egyenlő","prod":"n-tagú Descartes szorzat\nszorzatjel","zwj":"nem törhető üres jel","mdash":"m kötőjel","frasl":"tört osztásjel","upsih":"Görög üpszilon horog szimbólummal ","prop":"arányos ","middot":"középső pont\nGregorián vessző\nGörög középső pont","hellip":"vízszintes hármaspont\nbevezető hármas pont","eta":"Görög kis éta betű","iacute":"Latin kis i betű éles ékezettel","yen":"jen jel\nyuan jel","rlm":"jobbról balra jel","macr":"föléhúzás jel\nAPL felülhúzás","l [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/Breadcrumb.js b/dojox/editor/plugins/nls/it/Breadcrumb.js
new file mode 100644
index 0000000..55377a2
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Seleziona contenuto","deleteElement":"Elimina elemento","moveEnd":"Sposta il cursore per terminare","deleteContents":"Elimina contenuto","nodeActions":"Azioni ${nodeName}","selectElement":"Seleziona elemento","moveStart":"Sposta il cursore per iniziare"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/FindReplace.js b/dojox/editor/plugins/nls/it/FindReplace.js
new file mode 100644
index 0000000..0910053
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Indietro","findReplace":"Mostra/Nascondi Trova/Sostituisci","replaceAll":"Tutte le occorrenze","replaceDialogText":"Occorrenze sostituite: ${0}.","replaceButton":"Sostituisci","findButton":"Trova","findLabel":"Trova:","matchCase":"Maiuscole/minuscole","replaceLabel":"Sostituisci con:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/InsertEntity.js b/dojox/editor/plugins/nls/it/InsertEntity.js
new file mode 100644
index 0000000..9e62180
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Inserisci simbolo"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/PageBreak.js b/dojox/editor/plugins/nls/it/PageBreak.js
new file mode 100644
index 0000000..3b526b0
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Interruzione di pagina"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/Preview.js b/dojox/editor/plugins/nls/it/Preview.js
new file mode 100644
index 0000000..d272803
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/Preview.js
@@ -0,0 +1 @@
+({"preview":"Anteprima"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/Save.js b/dojox/editor/plugins/nls/it/Save.js
new file mode 100644
index 0000000..5e07c1c
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/Save.js
@@ -0,0 +1 @@
+({"save":"Salva"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/ShowBlockNodes.js b/dojox/editor/plugins/nls/it/ShowBlockNodes.js
new file mode 100644
index 0000000..58c41fa
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Mostra elementi blocco HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/Smiley.js b/dojox/editor/plugins/nls/it/Smiley.js
new file mode 100644
index 0000000..625cb58
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"risata","emoticonCool":"figo","emoticonTongue":"linguaccia","emoticonCrying":"in lacrime","emoticonOops":"ops","emoticonFrown":"triste","emoticonAngry":"arrabbiato","emoticonShy":"timido","emoticonNo":"no","emoticonAngel":"angelo","smiley":"Inserisci emoticon","emoticonIdea":"idea","emoticonEyebrow":"sopracciglia","emoticonSmile":"sorriso","emoticonWink":"occhiolino","emoticonYes":"yes","emoticonGrin":"ghigno","emoticonGoofy":"sciocco","emoticonHalf":"metà"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/TableDialog.js b/dojox/editor/plugins/nls/it/TableDialog.js
index 21b7548..88d9f52 100644
--- a/dojox/editor/plugins/nls/it/TableDialog.js
+++ b/dojox/editor/plugins/nls/it/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Imposta","insertTableTitle":"Inserisci tabella","insertTableRowAfterLabel":"Aggiungi riga dopo","center":"centro","deleteTableColumnLabel":"Elimina colonna","right":"destra","insertTableColumnBeforeLabel":"Aggiungi colonna prima","tableWidth":"Larghezza tabelle:","buttonInsert":"Inserisci","default":"predefinito","align":"Allinea:","insertTableRowBeforeLabel":"Aggiungi riga prima","cellSpacing":"Spaziatura celle:","pixels":"pixel","selectTableLabel":"Seleziona tabella","ro [...]
\ No newline at end of file
+({"buttonSet":"Imposta","insertTableTitle":"Inserisci tabella","insertTableRowAfterLabel":"Inserisci riga dopo","center":"centro","deleteTableColumnLabel":"Elimina colonna","right":"destra","insertTableColumnBeforeLabel":"Aggiungi colonna prima","tableWidth":"Larghezza tabella:","buttonInsert":"Inserisci","default":"predefinito","align":"Allinea:","insertTableRowBeforeLabel":"Inserisci riga prima","cellSpacing":"Spaziatura celle:","pixels":"pixel","selectTableLabel":"Seleziona tabella"," [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/it/latinEntities.js b/dojox/editor/plugins/nls/it/latinEntities.js
new file mode 100644
index 0000000..34a2a1e
--- /dev/null
+++ b/dojox/editor/plugins/nls/it/latinEntities.js
@@ -0,0 +1 @@
+({"le":"minore di o uguale a","prod":"prodotto n-ario\nsegno di prodotto","zwj":"congiuntore di larghezza zero","mdash":"trattino em","frasl":"barra obliqua di frazione","upsih":"simbolo della upsilon greca con uncino","prop":"proporzionale a","middot":"punto in mezzo\nvirgola georgiana\npunto centrale greco","hellip":"puntini di sospensione\ntre puntini di guida","eta":"lettera greca minuscola eta","iacute":"lettera latina i minuscola con accento acuto","yen":"simbolo dello yen\nsimbolo [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/Breadcrumb.js b/dojox/editor/plugins/nls/ja/Breadcrumb.js
new file mode 100644
index 0000000..f5592a4
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"内容の選択","deleteElement":"要素の削除","moveEnd":"終了するためにカーソルを移動","deleteContents":"内容の削除","nodeActions":"${nodeName} アクション","selectElement":"要素の選択","moveStart":"開始するためにカーソルを移動"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/FindReplace.js b/dojox/editor/plugins/nls/ja/FindReplace.js
new file mode 100644
index 0000000..55041d1
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"後方","findReplace":"検索/置換の切り替え","replaceAll":"すべてのオカレンス","replaceDialogText":"${0} 個のオカレンスを置換しました。","replaceButton":"置換","findButton":"検索","findLabel":"検索内容:","matchCase":"大/小文字を区別","replaceLabel":"次で置換:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/InsertEntity.js b/dojox/editor/plugins/nls/ja/InsertEntity.js
new file mode 100644
index 0000000..86e413b
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"記号の挿入"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/PageBreak.js b/dojox/editor/plugins/nls/ja/PageBreak.js
new file mode 100644
index 0000000..b4ec56e
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"改ページ"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/Preview.js b/dojox/editor/plugins/nls/ja/Preview.js
new file mode 100644
index 0000000..6775b1c
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/Preview.js
@@ -0,0 +1 @@
+({"preview":"プレビュー"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/Save.js b/dojox/editor/plugins/nls/ja/Save.js
new file mode 100644
index 0000000..6ca26ff
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/Save.js
@@ -0,0 +1 @@
+({"save":"保存"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/ShowBlockNodes.js b/dojox/editor/plugins/nls/ja/ShowBlockNodes.js
new file mode 100644
index 0000000..49e0cfa
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"HTML ブロック要素の表示"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/Smiley.js b/dojox/editor/plugins/nls/ja/Smiley.js
new file mode 100644
index 0000000..1016416
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"笑い","emoticonCool":"無愛想","emoticonTongue":"舌を出す","emoticonCrying":"泣く","emoticonOops":"おっと","emoticonFrown":"眉をひそめる","emoticonAngry":"怒り","emoticonShy":"はにかんだ","emoticonNo":"いいえ","emoticonAngel":"エンジェル","smiley":"顔文字の挿入","emoticonIdea":"アイデア","emoticonEyebrow":"眉毛","emoticonSmile":"微笑","emoticonWink":"ウィンク","emoticonYes":"はい","emoticonGrin":"笑顔","emoticonGoofy":"おろかな","emoticonHalf":"半分"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/TableDialog.js b/dojox/editor/plugins/nls/ja/TableDialog.js
index cf1dcab..b4ef202 100644
--- a/dojox/editor/plugins/nls/ja/TableDialog.js
+++ b/dojox/editor/plugins/nls/ja/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"設定","insertTableTitle":"テーブルの挿入","insertTableRowAfterLabel":"後ろに行を追加","center":"中央","deleteTableColumnLabel":"列の削除","right":"右","insertTableColumnBeforeLabel":"前に列を追加","tableWidth":"テーブル幅:","buttonInsert":"挿入","default":"デフォルト","align":"桁揃え:","insertTableRowBeforeLabel":"前に行を追加","cellSpacing":"セル間隔:","pixels":"ピクセル","selectTableLabel":"テーブルの選択","rows":"行:","modifyTableTitle":"テーブルの変更","cellPadding":"セル余白:","deleteTableRowLabel":"行の削除","backgroundColor":"背景色:","insertTableC [...]
\ No newline at end of file
+({"buttonSet":"設定","insertTableTitle":"テーブルの挿入","insertTableRowAfterLabel":"行を後に追加","center":"中央","deleteTableColumnLabel":"列の削除","right":"右","insertTableColumnBeforeLabel":"列を前に追加","tableWidth":"テーブルの幅:","buttonInsert":"挿入","default":"default","align":"位置合わせ","insertTableRowBeforeLabel":"行を前に追加","cellSpacing":"セル間隔:","pixels":"ピクセル","selectTableLabel":"テーブルの選択","rows":"行","modifyTableTitle":"テーブルの変更","cellPadding":"セル余白:","deleteTableRowLabel":"行の削除","backgroundColor":"背景色:","insertTabl [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ja/latinEntities.js b/dojox/editor/plugins/nls/ja/latinEntities.js
new file mode 100644
index 0000000..1ec5cba
--- /dev/null
+++ b/dojox/editor/plugins/nls/ja/latinEntities.js
@@ -0,0 +1 @@
+({"le":"小さいか等しい","prod":"n 乗\n積符号","zwj":"結合ありで幅ゼロ","mdash":"em ダッシュ","frasl":"分数のスラッシュ","upsih":"ギリシャ語のフック記号付きユプシロン","prop":"比例","middot":"中間ドット\nグルジア語のコンマ\nギリシャ語の中間ドット","hellip":"水平省略符号\n3 つのドット・リーダー","eta":"ギリシャ語の小文字イータ","iacute":"ラテン語の揚音付き小文字 i","yen":"円記号\n元記号","rlm":"右から左へのマーク","macr":"長音記号\n間隔長音記号\n上線\nAPL 上線","ldquo":"左二重引用符","Icirc":"ラテン語の曲折アクセント記号付き大文字 I","OElig":"ラテン語の大文字の合字 OE","hArr":"左右二重矢印","eth":"ラテン語の小文字 eth","divide":"除算記号","chi":"ギリシャ語の小文字カイ","eacute":"ラテン語の揚音付き小文字 e", [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/Breadcrumb.js b/dojox/editor/plugins/nls/ko/Breadcrumb.js
index 135aaf6..51014c1 100644
--- a/dojox/editor/plugins/nls/ko/Breadcrumb.js
+++ b/dojox/editor/plugins/nls/ko/Breadcrumb.js
@@ -1 +1 @@
-({"selectContents":"내용 선택","deleteElement":"요소 삭제","moveEnd":"커서를 끝 위치로 이동","deleteContents":"내용 삭제","nodeActions":"${nodeName} 동작","selectElement":"요소 선택","moveStart":"커서를 시작 위치로 이동"})
\ No newline at end of file
+({"selectContents":"컨텐츠 선택","deleteElement":"요소 삭제","moveEnd":"커서를 이동하여 종료","deleteContents":"컨텐츠 삭제","nodeActions":"${nodeName} 조치","selectElement":"요소 선택","moveStart":"커서를 이동하여 시작"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/FindReplace.js b/dojox/editor/plugins/nls/ko/FindReplace.js
index 2394dc5..ccca3e6 100644
--- a/dojox/editor/plugins/nls/ko/FindReplace.js
+++ b/dojox/editor/plugins/nls/ko/FindReplace.js
@@ -1 +1 @@
-({"backwards":"뒷방향으로","findReplace":"찾기/바꾸기 토글","replaceAll":"모두 바꾸기","replaceDialogText":"${0} 개의 내용이 변경되었습니다.","replaceButton":"바꾸기","findButton":"찾기","findLabel":"찾을 내용:","matchCase":"대소문자 구분","replaceLabel":"바꿀 내용:"})
\ No newline at end of file
+({"backwards":"뒤로","findReplace":"토글 찾기/바꾸기","replaceAll":"모두 바꾸기","replaceDialogText":"${0}개를 바꿨습니다.","replaceButton":"바꾸기","findButton":"찾기","findLabel":"찾을 문자열:","matchCase":"대소문자 일치","replaceLabel":"바꿀 대상:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/InsertEntity.js b/dojox/editor/plugins/nls/ko/InsertEntity.js
index ecd4c99..45b74ee 100644
--- a/dojox/editor/plugins/nls/ko/InsertEntity.js
+++ b/dojox/editor/plugins/nls/ko/InsertEntity.js
@@ -1 +1 @@
-({"insertEntity":"기호 넣기"})
\ No newline at end of file
+({"insertEntity":"기호 삽입"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/PageBreak.js b/dojox/editor/plugins/nls/ko/PageBreak.js
index c1b76c1..5dba6b1 100644
--- a/dojox/editor/plugins/nls/ko/PageBreak.js
+++ b/dojox/editor/plugins/nls/ko/PageBreak.js
@@ -1 +1 @@
-({"pageBreak":"쪽 나누기"})
\ No newline at end of file
+({"pageBreak":"페이지 나누기"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/ShowBlockNodes.js b/dojox/editor/plugins/nls/ko/ShowBlockNodes.js
index 79da1ea..bac847b 100644
--- a/dojox/editor/plugins/nls/ko/ShowBlockNodes.js
+++ b/dojox/editor/plugins/nls/ko/ShowBlockNodes.js
@@ -1 +1 @@
-({"showBlockNodes":"HTML 블록 요소 보이기"})
\ No newline at end of file
+({"showBlockNodes":"HTML 블록 요소 표시"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/Smiley.js b/dojox/editor/plugins/nls/ko/Smiley.js
new file mode 100644
index 0000000..04b3444
--- /dev/null
+++ b/dojox/editor/plugins/nls/ko/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"하하","emoticonCool":"멋진데","emoticonTongue":"메롱","emoticonCrying":"울음","emoticonOops":"어머나","emoticonFrown":"불만","emoticonAngry":"화남","emoticonShy":"부끄러움","emoticonNo":"아니오","emoticonAngel":"천사","smiley":"이모티콘 삽입","emoticonIdea":"아이디어","emoticonEyebrow":"글쎄","emoticonSmile":"미소","emoticonWink":"윙크","emoticonYes":"예","emoticonGrin":"씨익","emoticonGoofy":"바보","emoticonHalf":"고민 중"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/TableDialog.js b/dojox/editor/plugins/nls/ko/TableDialog.js
index 91679d9..c11b6ff 100644
--- a/dojox/editor/plugins/nls/ko/TableDialog.js
+++ b/dojox/editor/plugins/nls/ko/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"설정","insertTableTitle":"테이블 삽입","insertTableRowAfterLabel":"뒤에 행 추가","center":"가운데","deleteTableColumnLabel":"열 삭제","right":"오른쪽","insertTableColumnBeforeLabel":"앞에 열 추가","tableWidth":"테이블 너비:","buttonInsert":"삽입","default":"기본값","align":"맞추기:","insertTableRowBeforeLabel":"앞에 행 추가","cellSpacing":"셀 간격:","pixels":"픽셀","selectTableLabel":"테이블 선택","rows":"행:","modifyTableTitle":"테이블 수정","cellPadding":"셀 채우기:","deleteTableRowLabel":"행 삭제","backgroundColor":"배경색:","insertTableC [...]
\ No newline at end of file
+({"buttonSet":"설정","insertTableTitle":"테이블 삽입","insertTableRowAfterLabel":"사후 행 추가","center":"가운데","deleteTableColumnLabel":"열 삭제","right":"오른쪽","insertTableColumnBeforeLabel":"사전 열 추가","tableWidth":"테이블 너비:","buttonInsert":"삽입","default":"기본값","align":"맞추기:","insertTableRowBeforeLabel":"사전 행 추가","cellSpacing":"셀 간격:","pixels":"픽셀","selectTableLabel":"테이블 선택","rows":"행:","modifyTableTitle":"테이블 수정","cellPadding":"셀 채우기:","deleteTableRowLabel":"행 삭제","backgroundColor":"배경색:","insertTableC [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ko/latinEntities.js b/dojox/editor/plugins/nls/ko/latinEntities.js
new file mode 100644
index 0000000..8066e4b
--- /dev/null
+++ b/dojox/editor/plugins/nls/ko/latinEntities.js
@@ -0,0 +1 @@
+({"le":"적거나 같다","prod":"n-ary product\n결과 기호","zwj":"제로 너비 조이너","mdash":"em 대시","frasl":"분수 사선","upsih":"그리스 upsilon에 고리 기호","prop":"비례","middot":"중앙 점\n중앙 점\n중앙 점","hellip":"수평 세 점\n수평 세 점","eta":"그리스소문자 eta","iacute":"라틴소문자 i 액센트","yen":"엔화 기호\n엔화 기호","rlm":"오른쪽에서 왼쪽으로 표시","macr":"장음 기호\n장음 기호\n장음 기호\n장음 기호","ldquo":"왼쪽 이중 따옴표","Icirc":"라틴대문자 I 위 꺾음 표시","OElig":"라틴대문자 ligature OE","hArr":"좌우 이중 화살표","eth":"라틴소문자 eth","divide":"나눗셈 기호","chi":"그리스소문자 chi","eacute":"라틴소문자 e 위 액센트","icirc" [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/Breadcrumb.js b/dojox/editor/plugins/nls/pl/Breadcrumb.js
new file mode 100644
index 0000000..d4360df
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Zaznacz treść","deleteElement":"Usuń element","moveEnd":"Przenieś kursor na koniec","deleteContents":"Usuń treść","nodeActions":"${nodeName} - działania","selectElement":"Zaznacz element","moveStart":"Przenieś kursor na początek"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/FindReplace.js b/dojox/editor/plugins/nls/pl/FindReplace.js
new file mode 100644
index 0000000..39184d4
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Do tyłu","findReplace":"Przełącz znajdowanie/zastępowanie","replaceAll":"Wszystkie wystąpienia","replaceDialogText":"Zastąpione wystąpienia: ${0}.","replaceButton":"Zastąp","findButton":"Znajdź","findLabel":"Znajdź:","matchCase":"Uwzględniaj wielkość liter","replaceLabel":"Zastąp przez:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/InsertEntity.js b/dojox/editor/plugins/nls/pl/InsertEntity.js
new file mode 100644
index 0000000..9136a8d
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Wstaw symbol"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/PageBreak.js b/dojox/editor/plugins/nls/pl/PageBreak.js
new file mode 100644
index 0000000..a8f6b00
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Podział strony"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/Preview.js b/dojox/editor/plugins/nls/pl/Preview.js
new file mode 100644
index 0000000..64cdc8b
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/Preview.js
@@ -0,0 +1 @@
+({"preview":"Podgląd"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/Save.js b/dojox/editor/plugins/nls/pl/Save.js
new file mode 100644
index 0000000..7f87eb2
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/Save.js
@@ -0,0 +1 @@
+({"save":"Zapisz"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/ShowBlockNodes.js b/dojox/editor/plugins/nls/pl/ShowBlockNodes.js
new file mode 100644
index 0000000..79d057c
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Pokaż elementy bloków HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/Smiley.js b/dojox/editor/plugins/nls/pl/Smiley.js
new file mode 100644
index 0000000..ba3ac33
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"śmiech","emoticonCool":"na luzie","emoticonTongue":"język","emoticonCrying":"płacz","emoticonOops":"oj","emoticonFrown":"niezadowolenie","emoticonAngry":"złość","emoticonShy":"nieśmiałość","emoticonNo":"Nie","emoticonAngel":"anioł","smiley":"Wstaw emotikon","emoticonIdea":"pomysł","emoticonEyebrow":"brew","emoticonSmile":"uśmiech","emoticonWink":"mrugnięcie","emoticonYes":"Tak","emoticonGrin":"szeroki uśmiech","emoticonGoofy":"niezdarność","emoticonHalf":"niesmak"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/TableDialog.js b/dojox/editor/plugins/nls/pl/TableDialog.js
index 4d2e3c4..26c009f 100644
--- a/dojox/editor/plugins/nls/pl/TableDialog.js
+++ b/dojox/editor/plugins/nls/pl/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Ustaw","insertTableTitle":"Wstaw tabelę","insertTableRowAfterLabel":"Dodaj wiersz po","center":"wyśrodkuj","deleteTableColumnLabel":"Usuń kolumnę","right":"do prawej","insertTableColumnBeforeLabel":"Dodaj kolumnę przed","tableWidth":"Szerokość tabeli:","buttonInsert":"Wstaw","default":"wartość domyślna","align":"Wyrównaj:","insertTableRowBeforeLabel":"Dodaj wiersz przed","cellSpacing":"Odstępy między komórkami:","pixels":"piksle","selectTableLabel":"Wybieranie tabeli","row [...]
\ No newline at end of file
+({"buttonSet":"Ustaw","insertTableTitle":"Wstawianie tabeli","insertTableRowAfterLabel":"Dodaj wiersz po","center":"środek","deleteTableColumnLabel":"Usuń kolumnę","right":"prawa strona","insertTableColumnBeforeLabel":"Dodaj kolumnę przed","tableWidth":"Szerokość tabeli:","buttonInsert":"Wstaw","default":"domyślna","align":"Wyrównanie:","insertTableRowBeforeLabel":"Dodaj wiersz przed","cellSpacing":"Odstępy między komórkami:","pixels":"piksle","selectTableLabel":"Wybierz tabelę","rows":" [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pl/latinEntities.js b/dojox/editor/plugins/nls/pl/latinEntities.js
new file mode 100644
index 0000000..73d071e
--- /dev/null
+++ b/dojox/editor/plugins/nls/pl/latinEntities.js
@@ -0,0 +1 @@
+({"le":"mniejsze niż lub równe","prod":"iloczyn n elementów\nznak iloczynu","zwj":"łącznik o zerowej szerokości","mdash":"pauza","frasl":"kreska ułamkowa","upsih":"grecka litera ipsylon z symbolem haczyka","prop":"proporcjonalnie do","middot":"kropka środkowa\ngruziński przecinek\ngrecka kropka środkowa","hellip":"wielokropek\ntrzy kropki","eta":"grecka mała litera eta","iacute":"łacińska mała litera i z akcentem ostrym","yen":"znak jena\nznak yuana","rlm":"znacznik zapisu od prawej do l [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/Breadcrumb.js b/dojox/editor/plugins/nls/pt/Breadcrumb.js
new file mode 100644
index 0000000..1f5fe1a
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Selecionar Conteúdo","deleteElement":"Excluir Elemento","moveEnd":"Mover Cursor para o Final","deleteContents":"Excluir Conteúdo","nodeActions":"${nodeName} Ações","selectElement":"Selecionar Elemento","moveStart":"Mover Cursor para o Início"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/FindReplace.js b/dojox/editor/plugins/nls/pt/FindReplace.js
new file mode 100644
index 0000000..cf5a942
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Retroceder","findReplace":"Comutar Localizar/Substituir","replaceAll":"Todas as Ocorrências","replaceDialogText":"${0} ocorrências substituídas.","replaceButton":"Substituir","findButton":"Localizar","findLabel":"Localizar:","matchCase":"Caso de Correspondência","replaceLabel":"Substituir por:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/InsertEntity.js b/dojox/editor/plugins/nls/pt/InsertEntity.js
new file mode 100644
index 0000000..33eba66
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Inserir Símbolo"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/PageBreak.js b/dojox/editor/plugins/nls/pt/PageBreak.js
new file mode 100644
index 0000000..32e538e
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Quebra de Página"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/Preview.js b/dojox/editor/plugins/nls/pt/Preview.js
new file mode 100644
index 0000000..f73f586
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/Preview.js
@@ -0,0 +1 @@
+({"preview":"Visualização"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/Save.js b/dojox/editor/plugins/nls/pt/Save.js
new file mode 100644
index 0000000..ea1c362
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/Save.js
@@ -0,0 +1 @@
+({"save":"Salvar"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/ShowBlockNodes.js b/dojox/editor/plugins/nls/pt/ShowBlockNodes.js
new file mode 100644
index 0000000..870d951
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Mostrar Elementos de Bloco HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/Smiley.js b/dojox/editor/plugins/nls/pt/Smiley.js
new file mode 100644
index 0000000..3795f28
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"gargalhando","emoticonCool":"legal","emoticonTongue":"mostrando a língua","emoticonCrying":"chorando","emoticonOops":"surpreso","emoticonFrown":"sobrancelhas franzidas","emoticonAngry":"bravo","emoticonShy":"envergonhado","emoticonNo":"não","emoticonAngel":"angelical","smiley":"Inserir Emoticon","emoticonIdea":"ideia","emoticonEyebrow":"sarcástico","emoticonSmile":"sorriso","emoticonWink":"piscando","emoticonYes":"sim","emoticonGrin":"sorriso largo","emoticonGoofy": [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/TableDialog.js b/dojox/editor/plugins/nls/pt/TableDialog.js
index 10f4772..fd4affc 100644
--- a/dojox/editor/plugins/nls/pt/TableDialog.js
+++ b/dojox/editor/plugins/nls/pt/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Definir","insertTableTitle":"Inserir Tabela","insertTableRowAfterLabel":"Adicionar Linha Depois","center":"centralizado","deleteTableColumnLabel":"Excluir Coluna","right":"direita","insertTableColumnBeforeLabel":"Adicionar Coluna Antes","tableWidth":"Largura da Tabela:","buttonInsert":"Inserir","default":"padrão","align":"Alinhar:","insertTableRowBeforeLabel":"Adicionar Linha Antes","cellSpacing":"Espaçamento de Célula:","pixels":"pixels","selectTableLabel":"Selecionar Tab [...]
\ No newline at end of file
+({"buttonSet":"Configurar","insertTableTitle":"Inserir Tabela","insertTableRowAfterLabel":"Incluir Linha Depois","center":"centro","deleteTableColumnLabel":"Excluir Coluna","right":"direita","insertTableColumnBeforeLabel":"Incluir Coluna Antes","tableWidth":"Largura da Tabela:","buttonInsert":"Inserir","default":"default","align":"Alinhar:","insertTableRowBeforeLabel":"Incluir Linha Antes","cellSpacing":"Espaçamento de Célula:","pixels":"pixels","selectTableLabel":"Selecionar Tabela","ro [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/pt/latinEntities.js b/dojox/editor/plugins/nls/pt/latinEntities.js
new file mode 100644
index 0000000..af7c3d4
--- /dev/null
+++ b/dojox/editor/plugins/nls/pt/latinEntities.js
@@ -0,0 +1 @@
+({"le":"menor ou igual a","prod":"produto de n elementos\nsímbolo de produto","zwj":"conector de largura zero","mdash":"travessão","frasl":"barra de fração","upsih":"Símbolo da letra grega upsilon com gancho","prop":"proporcional a","middot":"ponto mediano\nvírgula georgiana\nponto mediano grego","hellip":"reticências horizontais\ntrês pontos","eta":"Letra grega minúscula eta","iacute":"Letra latina minúscula i com acento agudo","yen":"símbolo de ienesímbolo de yuan","rlm":"marca da dire [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/Breadcrumb.js b/dojox/editor/plugins/nls/ru/Breadcrumb.js
new file mode 100644
index 0000000..448318d
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"Выбрать содержимое","deleteElement":"Удалить элемент","moveEnd":"Поместить курсор в конец","deleteContents":"Удалить содержимое","nodeActions":"${nodeName}: действия","selectElement":"Выбрать элемент","moveStart":"Поместить курсор в начало"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/FindReplace.js b/dojox/editor/plugins/nls/ru/FindReplace.js
new file mode 100644
index 0000000..665961e
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"Назад","findReplace":"Переключатель Поиск/Замена","replaceAll":"Все вхождения","replaceDialogText":"Заменено ${0} вхождений.","replaceButton":"Заменить","findButton":"Найти","findLabel":"Найти:","matchCase":"С учетом регистра","replaceLabel":"Заменить на:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/InsertEntity.js b/dojox/editor/plugins/nls/ru/InsertEntity.js
new file mode 100644
index 0000000..b96e39b
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"Вставить символ"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/PageBreak.js b/dojox/editor/plugins/nls/ru/PageBreak.js
new file mode 100644
index 0000000..e371e2c
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"Разделитель страниц"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/Preview.js b/dojox/editor/plugins/nls/ru/Preview.js
new file mode 100644
index 0000000..0a8069d
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/Preview.js
@@ -0,0 +1 @@
+({"preview":"Предварительный просмотр"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/Save.js b/dojox/editor/plugins/nls/ru/Save.js
new file mode 100644
index 0000000..8e711ea
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/Save.js
@@ -0,0 +1 @@
+({"save":"Сохранить"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/ShowBlockNodes.js b/dojox/editor/plugins/nls/ru/ShowBlockNodes.js
new file mode 100644
index 0000000..308f6c2
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"Показать элементы блока HTML"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/Smiley.js b/dojox/editor/plugins/nls/ru/Smiley.js
new file mode 100644
index 0000000..145f131
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"смех","emoticonCool":"здорово","emoticonTongue":"насмешка","emoticonCrying":"плачь","emoticonOops":"уупс","emoticonFrown":"хмурый вид","emoticonAngry":"злость","emoticonShy":"застенчивость","emoticonNo":"нет","emoticonAngel":"ангел","smiley":"Вставить значок настроения","emoticonIdea":"есть идея","emoticonEyebrow":"удивление","emoticonSmile":"улыбка","emoticonWink":"подмигивание","emoticonYes":"да","emoticonGrin":"усмешка","emoticonGoofy":"глупый","emoticonHalf":"по [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/TableDialog.js b/dojox/editor/plugins/nls/ru/TableDialog.js
index 2b9b1ae..e904440 100644
--- a/dojox/editor/plugins/nls/ru/TableDialog.js
+++ b/dojox/editor/plugins/nls/ru/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"Задать","insertTableTitle":"Вставить таблицу","insertTableRowAfterLabel":"Добавить строку после","center":"по центру","deleteTableColumnLabel":"Удалить столбец","right":"справа","insertTableColumnBeforeLabel":"Добавить столбец до","tableWidth":"Ширина таблицы:","buttonInsert":"Вставить","default":"по умолчанию","align":"Выровнять:","insertTableRowBeforeLabel":"Добавить строку до","cellSpacing":"Отступ в ячейке:","pixels":"пикс.","selectTableLabel":"Выбрать таблицу","rows": [...]
\ No newline at end of file
+({"buttonSet":"Задать","insertTableTitle":"Вставить таблицу","insertTableRowAfterLabel":"Добавить строку после","center":"по центру","deleteTableColumnLabel":"Удалить столбец","right":"по правому краю","insertTableColumnBeforeLabel":"Добавить столбец перед","tableWidth":"Ширина таблицы:","buttonInsert":"Вставить","default":"по умолчанию","align":"Выровнять:","insertTableRowBeforeLabel":"Добавить строку перед","cellSpacing":"Расстояние между ячейками:","pixels":"пикселов","selectTableLabe [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/ru/latinEntities.js b/dojox/editor/plugins/nls/ru/latinEntities.js
new file mode 100644
index 0000000..f8c9dae
--- /dev/null
+++ b/dojox/editor/plugins/nls/ru/latinEntities.js
@@ -0,0 +1 @@
+({"le":"меньше или равно","prod":"n-арное произведение\nсимвол произведения","zwj":"соединитель нулевой ширины","mdash":"тире длины M","frasl":"косая черта","upsih":"греческий ипсилон с хвостиком","prop":"пропорционально","middot":"средняя точка\nзапятая в грузинском\nсредняя точка в греческом","hellip":"многоточие\nтри точки","eta":"греческая строчная буква эта","iacute":"латинская строчная буква i с акутом","yen":"символ иены\nсимвол юаня","rlm":"знак справа-налево","macr":"знак долгот [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/Breadcrumb.js b/dojox/editor/plugins/nls/zh-tw/Breadcrumb.js
new file mode 100644
index 0000000..bdbf254
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"選取內容","deleteElement":"刪除元素","moveEnd":"將游標移到末尾","deleteContents":"刪除內容","nodeActions":"${nodeName} 動作","selectElement":"選取元素","moveStart":"將游標移到開頭"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/FindReplace.js b/dojox/editor/plugins/nls/zh-tw/FindReplace.js
new file mode 100644
index 0000000..9085487
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"向後","findReplace":"切換尋找/取代","replaceAll":"所有出現位置","replaceDialogText":"取代了 ${0} 項。","replaceButton":"取代","findButton":"尋找","findLabel":"尋找目標:","matchCase":"大小寫相符","replaceLabel":"取代為:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/InsertEntity.js b/dojox/editor/plugins/nls/zh-tw/InsertEntity.js
new file mode 100644
index 0000000..5f3ae31
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"插入符號"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/PageBreak.js b/dojox/editor/plugins/nls/zh-tw/PageBreak.js
new file mode 100644
index 0000000..d123553
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"分頁"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/Preview.js b/dojox/editor/plugins/nls/zh-tw/Preview.js
new file mode 100644
index 0000000..f2129f8
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/Preview.js
@@ -0,0 +1 @@
+({"preview":"預覽"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/Save.js b/dojox/editor/plugins/nls/zh-tw/Save.js
new file mode 100644
index 0000000..eceafbc
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/Save.js
@@ -0,0 +1 @@
+({"save":"儲存"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/ShowBlockNodes.js b/dojox/editor/plugins/nls/zh-tw/ShowBlockNodes.js
new file mode 100644
index 0000000..f23ec5c
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"顯示 HTML 區塊元素"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/Smiley.js b/dojox/editor/plugins/nls/zh-tw/Smiley.js
new file mode 100644
index 0000000..eba6a60
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"大笑","emoticonCool":"酷","emoticonTongue":"吐舌頭","emoticonCrying":"哭泣","emoticonOops":"哎喲","emoticonFrown":"皺眉","emoticonAngry":"生氣","emoticonShy":"羞怯","emoticonNo":"不對","emoticonAngel":"守護神","smiley":"插入表情符號","emoticonIdea":"思考","emoticonEyebrow":"揚眉","emoticonSmile":"微笑","emoticonWink":"眨眼","emoticonYes":"對","emoticonGrin":"露齒而笑","emoticonGoofy":"傻了","emoticonHalf":"左右為難"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/TableDialog.js b/dojox/editor/plugins/nls/zh-tw/TableDialog.js
index 9dfe915..00168b5 100644
--- a/dojox/editor/plugins/nls/zh-tw/TableDialog.js
+++ b/dojox/editor/plugins/nls/zh-tw/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"設定","insertTableTitle":"插入表格","insertTableRowAfterLabel":"在後面新增一列","center":"置中","deleteTableColumnLabel":"刪除直欄","right":"右","insertTableColumnBeforeLabel":"在前面新增一個直欄","tableWidth":"表格寬度:","buttonInsert":"插入","default":"預設","align":"對齊:","insertTableRowBeforeLabel":"在前面新增一列","cellSpacing":"資料格間距:","pixels":"像素","selectTableLabel":"選取表格","rows":"列","modifyTableTitle":"修改表格","cellPadding":"資料格行距:","deleteTableRowLabel":"刪除列","backgroundColor":"背景顏色:","insertTableColumnAfterL [...]
\ No newline at end of file
+({"buttonSet":"設定","insertTableTitle":"插入表格","insertTableRowAfterLabel":"在後面新增一個列","center":"置中","deleteTableColumnLabel":"刪除欄","right":"靠右","insertTableColumnBeforeLabel":"在前面新增一個直欄","tableWidth":"表格寬度:","buttonInsert":"插入","default":"預設值","align":"對齊:","insertTableRowBeforeLabel":"在前面新增一個列","cellSpacing":"資料格間距:","pixels":"像素","selectTableLabel":"選取表格","rows":"列:","modifyTableTitle":"修改表格","cellPadding":"資料格行距:","deleteTableRowLabel":"刪除列","backgroundColor":"背景顏色:","insertTableColumnAf [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh-tw/latinEntities.js b/dojox/editor/plugins/nls/zh-tw/latinEntities.js
new file mode 100644
index 0000000..7799926
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh-tw/latinEntities.js
@@ -0,0 +1 @@
+({"le":"小於或等於","prod":"n 元積\n積符號","zwj":"零寬連字符","mdash":"長破折號","frasl":"分數斜線","upsih":"帶鉤的希臘文 upsilon 符號","prop":"成比例","middot":"中點號\n中心點\n希臘中點","hellip":"水平省略號\n三個點開頭","eta":"希臘文小寫字母 η","iacute":"帶揚音符的拉丁文小寫字母 i","yen":"日圓符號\n人民幣符號","rlm":"從右到左標記","macr":"長音符\n間隔長音符\n上線\nAPL 上線","ldquo":"左雙引號","Icirc":"帶抑揚音符的拉丁文大寫字母 I","OElig":"拉丁文大寫連字 OE","hArr":"左右雙箭頭","eth":"拉丁文小寫字母 eth","divide":"除號","chi":"希臘文小寫字母 χ","eacute":"帶揚音符的拉丁文小寫字母 e","icirc":"帶抑揚音符的拉丁文小寫字母 i","iexcl":"倒感歎號","ETH":"拉丁文大寫字母 E [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/Breadcrumb.js b/dojox/editor/plugins/nls/zh/Breadcrumb.js
new file mode 100644
index 0000000..981e8ba
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/Breadcrumb.js
@@ -0,0 +1 @@
+({"selectContents":"选择内容","deleteElement":"删除元素","moveEnd":"将光标移至结尾","deleteContents":"删除内容","nodeActions":"${nodeName} 操作","selectElement":"选择元素","moveStart":"将光标移至开头"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/FindReplace.js b/dojox/editor/plugins/nls/zh/FindReplace.js
new file mode 100644
index 0000000..12a17ae
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/FindReplace.js
@@ -0,0 +1 @@
+({"backwards":"向后","findReplace":"切换“查找/替换”","replaceAll":"所有出现位置","replaceDialogText":"已替换 ${0} 个出现位置。","replaceButton":"替换","findButton":"查找","findLabel":"查找对象:","matchCase":"大小写匹配","replaceLabel":"替换为:"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/InsertEntity.js b/dojox/editor/plugins/nls/zh/InsertEntity.js
new file mode 100644
index 0000000..7a91988
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/InsertEntity.js
@@ -0,0 +1 @@
+({"insertEntity":"插入符号"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/PageBreak.js b/dojox/editor/plugins/nls/zh/PageBreak.js
new file mode 100644
index 0000000..21dda43
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/PageBreak.js
@@ -0,0 +1 @@
+({"pageBreak":"换页符"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/Preview.js b/dojox/editor/plugins/nls/zh/Preview.js
new file mode 100644
index 0000000..c23904b
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/Preview.js
@@ -0,0 +1 @@
+({"preview":"预览"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/Save.js b/dojox/editor/plugins/nls/zh/Save.js
new file mode 100644
index 0000000..6ca26ff
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/Save.js
@@ -0,0 +1 @@
+({"save":"保存"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/ShowBlockNodes.js b/dojox/editor/plugins/nls/zh/ShowBlockNodes.js
new file mode 100644
index 0000000..92b1038
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/ShowBlockNodes.js
@@ -0,0 +1 @@
+({"showBlockNodes":"显示 HTML 块元素"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/Smiley.js b/dojox/editor/plugins/nls/zh/Smiley.js
new file mode 100644
index 0000000..ec26e34
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/Smiley.js
@@ -0,0 +1 @@
+({"emoticonLaughing":"大笑","emoticonCool":"酷","emoticonTongue":"吐舌","emoticonCrying":"哭泣","emoticonOops":"oops","emoticonFrown":"皱眉","emoticonAngry":"愤怒","emoticonShy":"害羞","emoticonNo":"摇头","emoticonAngel":"天使","smiley":"插入表情图标","emoticonIdea":"思考","emoticonEyebrow":"挑眉","emoticonSmile":"微笑","emoticonWink":"眨眼","emoticonYes":"点头","emoticonGrin":"咧着嘴笑","emoticonGoofy":"傻了","emoticonHalf":"左右为难"})
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/TableDialog.js b/dojox/editor/plugins/nls/zh/TableDialog.js
index 8cc7412..21e154d 100644
--- a/dojox/editor/plugins/nls/zh/TableDialog.js
+++ b/dojox/editor/plugins/nls/zh/TableDialog.js
@@ -1 +1 @@
-({"buttonSet":"设置","insertTableTitle":"插入表","insertTableRowAfterLabel":"在之后添加行","center":"居中","deleteTableColumnLabel":"删除列","right":"右","insertTableColumnBeforeLabel":"在之前添加列","tableWidth":"表宽度:","buttonInsert":"插入","default":"缺省值","align":"对齐:","insertTableRowBeforeLabel":"在之前添加行","cellSpacing":"单元格间距:","pixels":"像素","selectTableLabel":"选择表","rows":"行:","modifyTableTitle":"修改表","cellPadding":"单元格边距:","deleteTableRowLabel":"删除行","backgroundColor":"背景色:","insertTableColumnAfterLabel":"在之 [...]
\ No newline at end of file
+({"buttonSet":"设置","insertTableTitle":"插入表","insertTableRowAfterLabel":"在之后添加行","center":"中间对齐","deleteTableColumnLabel":"删除列","right":"右边对齐","insertTableColumnBeforeLabel":"在之前添加列","tableWidth":"表宽度:","buttonInsert":"插入","default":"缺省值","align":"对齐:","insertTableRowBeforeLabel":"在之前添加行","cellSpacing":"单元格间距:","pixels":"像素","selectTableLabel":"选择表","rows":"行:","modifyTableTitle":"修改表","cellPadding":"单元格边距:","deleteTableRowLabel":"删除行","backgroundColor":"背景色:","insertTableColumnAfterLabel [...]
\ No newline at end of file
diff --git a/dojox/editor/plugins/nls/zh/latinEntities.js b/dojox/editor/plugins/nls/zh/latinEntities.js
new file mode 100644
index 0000000..29b3d8b
--- /dev/null
+++ b/dojox/editor/plugins/nls/zh/latinEntities.js
@@ -0,0 +1 @@
+({"le":"小于或等于","prod":"N 元积\n积符号","zwj":"零宽度连字符","mdash":"长破折号","frasl":"分数斜杠","upsih":"带挂钩符号的希腊字母 upsilon","prop":"成比例","middot":"中心点\n乔治逗号\n希腊中心点","hellip":"水平省略号\n三个点组成的标题","eta":"希腊小写字母 η","iacute":"带锐音符的拉丁小写字母 i","yen":"日元符号/人民币符号","rlm":"从右向左标记","macr":"长音符号\n间隔长音符号\n破折号\nAPL 破折号","ldquo":"左双引号","Icirc":"带抑扬符的拉丁大写字母 I","OElig":"拉丁大写连字 OE","hArr":"左右向双箭头","eth":"拉丁小写字母 eth","divide":"除号","chi":"希腊小写字母 χ","eacute":"带锐音符的拉丁小写字母 e","icirc":"带抑扬符的拉丁小写字母 i","iexcl":"反感叹号","ETH":"拉丁大写字母 E [...]
\ No newline at end of file
diff --git a/dojox/form/resources/RecieveFile.php b/dojox/form/resources/RecieveFile.php
deleted file mode 100644
index aca541f..0000000
--- a/dojox/form/resources/RecieveFile.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-// THIS IS AN EXAMPLE
-// you will obviously need to do more server side work than I am doing here to check and move your upload.
-// API is up for discussion, jump on http://dojotoolkit.org/forums
-
-// JSON.php is available in dojo svn checkout
-require("../../../dojo/tests/resources/JSON.php");
-$json = new Services_JSON();
-
-// fake delay
-sleep(3);
-$name = empty($_REQUEST['name'])? "default" : $_REQUEST['name'];
-if(is_array($_FILES)){
-	$ar = array(
-		// lets just pass lots of stuff back and see what we find.
-		// the _FILES aren't coming through in IE6 (maybe 7)
-		'status' => "success",
-		'name' => $name,
-		'request' => $_REQUEST,
-		'postvars' => $_POST,
-		'details' => $_FILES,
-		// and some static subarray just to see
-		'foo' => array('foo'=>"bar")
-	);
-
-}else{
-	$ar = array(
-		'status' => "failed",
-		'details' => ""
-	);
-}
-
-// yeah, seems you have to wrap iframeIO stuff in textareas?
-$foo = $json->encode($ar);
-?>
-<textarea><?php print $foo; ?></textarea>
diff --git a/dojox/grid/DataGrid.js b/dojox/grid/DataGrid.js
index 2e26948..328f445 100644
--- a/dojox/grid/DataGrid.js
+++ b/dojox/grid/DataGrid.js
@@ -13,4 +13,4 @@
 	for documentation and information on getting the source.
 */
 
-if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0;},add:function(_1){if(this._hash[_1.id]){throw new Error("Tried to register widget with id=="+_1.id+" but that id is already registered");}this._hash[_1.id]=_1;this.length++;},remove:function(id){if(this._hash[id]){delete this._hash[id];this.length--;}},forEach:function(_2,_3 [...]
+if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0;},add:function(_1){if(this._hash[_1.id]){throw new Error("Tried to register widget with id=="+_1.id+" but that id is already registered");}this._hash[_1.id]=_1;this.length++;},remove:function(id){if(this._hash[id]){delete this._hash[id];this.length--;}},forEach:function(_2,_3 [...]
diff --git a/dojox/grid/DataGrid.js.uncompressed.js b/dojox/grid/DataGrid.js.uncompressed.js
index fc425be..39a1af3 100644
--- a/dojox/grid/DataGrid.js.uncompressed.js
+++ b/dojox/grid/DataGrid.js.uncompressed.js
@@ -245,7 +245,7 @@ dijit.getUniqueId = function(/*String*/widgetType){
 			(widgetType in dijit._widgetTypeCtr ?
 				++dijit._widgetTypeCtr[widgetType] : dijit._widgetTypeCtr[widgetType] = 0);
 	}while(dijit.byId(id));
-	return id; // String
+	return dijit._scopeName == "dijit" ? id : dijit._scopeName + "_" + id; // String
 };
 
 dijit.findWidgets = function(/*DomNode*/ root){
@@ -371,9 +371,16 @@ dijit.isTabNavigable = function(/*Element*/elem){
 						body = doc && doc.body;
 					return body && body.contentEditable == 'true';
 				}else{
-					doc = elem.contentWindow.document;
-					body = doc && doc.body;
-					return body && body.firstChild && body.firstChild.contentEditable == 'true';
+					// contentWindow.document isn't accessible within IE7/8
+					// if the iframe.src points to a foreign url and this
+					// page contains an element, that could get focus
+					try{
+						doc = elem.contentWindow.document;
+						body = doc && doc.body;
+						return body && body.firstChild && body.firstChild.contentEditable == 'true';
+					}catch(e){
+						return false;
+					}
 				}
 			default:
 				return elem.contentEditable == 'true';
@@ -8068,6 +8075,8 @@ if(!dojo._hasResource["dojo.dnd.common"]){ //_hasResource checks added by build.
 dojo._hasResource["dojo.dnd.common"] = true;
 dojo.provide("dojo.dnd.common");
 
+dojo.dnd.getCopyKeyState = dojo.isCopyKeyPressed;
+
 dojo.dnd._uniqueId = 0;
 dojo.dnd.getUniqueId = function(){
 	// summary:
@@ -16316,4 +16325,4 @@ dojox.grid.DataGrid.markupFactory = function(props, node, ctor, cellFunc){
 }
 
 
-dojo.i18n._preloadLocalizations("dojox.grid.nls.DataGrid", ["ROOT","ar","ca","cs","da","de","de-de","el","en","en-gb","en-us","es","es-es","fi","fi-fi","fr","fr-fr","he","he-il","hu","it","it-it","ja","ja-jp","ko","ko-kr","nl","nl-nl","no","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);
+dojo.i18n._preloadLocalizations("dojox.grid.nls.DataGrid", ["ROOT","ar","ca","cs","da","de","de-de","el","en","en-gb","en-us","es","es-es","fi","fi-fi","fr","fr-fr","he","he-il","hu","it","it-it","ja","ja-jp","ko","ko-kr","nb","nl","nl-nl","pl","pt","pt-br","pt-pt","ru","sk","sl","sv","th","tr","xx","zh","zh-cn","zh-tw"]);
diff --git a/dojox/grid/EnhancedGrid.js b/dojox/grid/EnhancedGrid.js
index f399411..c6abfbf 100644
--- a/dojox/grid/EnhancedGrid.js
+++ b/dojox/grid/EnhancedGrid.js
@@ -10,7 +10,7 @@ dojo._hasResource["dojox.grid.EnhancedGrid"]=true;
 dojo.provide("dojox.grid.EnhancedGrid");
 dojo.require("dojox.grid.DataGrid");
 dojo.require("dojox.grid.enhanced._Plugin");
-dojo.requireLocalization("dojox.grid.enhanced","EnhancedGrid",null,"ROOT,zh");
+dojo.requireLocalization("dojox.grid.enhanced","EnhancedGrid",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,zh,zh-tw");
 dojo.experimental("dojox.grid.EnhancedGrid");
 dojo.declare("dojox.grid.EnhancedGrid",dojox.grid.DataGrid,{plugins:null,pluginMgr:null,doubleAffordance:false,postMixInProperties:function(){
 this._nls=dojo.i18n.getLocalization("dojox.grid.enhanced","EnhancedGrid",this.lang);
diff --git a/dojox/grid/enhanced/nls/cs/EnhancedGrid.js b/dojox/grid/enhanced/nls/cs/EnhancedGrid.js
new file mode 100644
index 0000000..fa66be3
--- /dev/null
+++ b/dojox/grid/enhanced/nls/cs/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Sestupně","ascending":"Vzestupně","nestedSort":"Vnořené řazení","unsorted":"Tento sloupec neřadit","singleSort":"Jednoduché řazení","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/de/EnhancedGrid.js b/dojox/grid/enhanced/nls/de/EnhancedGrid.js
new file mode 100644
index 0000000..48ac78f
--- /dev/null
+++ b/dojox/grid/enhanced/nls/de/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Absteigend","ascending":"Aufsteigend","nestedSort":"Verschachtelte Sortierung","unsorted":"Spalte nicht sortieren","singleSort":"Einfache Sortierung","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/es/EnhancedGrid.js b/dojox/grid/enhanced/nls/es/EnhancedGrid.js
new file mode 100644
index 0000000..692ee35
--- /dev/null
+++ b/dojox/grid/enhanced/nls/es/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Descendente","ascending":"Ascendente","nestedSort":"Orden anidado","unsorted":"No ordenar esta columna","singleSort":"Orden único","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/fr/EnhancedGrid.js b/dojox/grid/enhanced/nls/fr/EnhancedGrid.js
new file mode 100644
index 0000000..49b9020
--- /dev/null
+++ b/dojox/grid/enhanced/nls/fr/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Décroissant","ascending":"Croissant","nestedSort":"Tri imbriqué","unsorted":"Ne pas trier cette colonne","singleSort":"Tri unique","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/hu/EnhancedGrid.js b/dojox/grid/enhanced/nls/hu/EnhancedGrid.js
new file mode 100644
index 0000000..8f94e10
--- /dev/null
+++ b/dojox/grid/enhanced/nls/hu/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Csökkenő","ascending":"Növekvő","nestedSort":"Beágyazott rendezés","unsorted":"Az oszlop nincs rendezve","singleSort":"Egyszerű rendezés","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/it/EnhancedGrid.js b/dojox/grid/enhanced/nls/it/EnhancedGrid.js
new file mode 100644
index 0000000..11ce57a
--- /dev/null
+++ b/dojox/grid/enhanced/nls/it/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Decrescente","ascending":"Crescente","nestedSort":"Ordinamento nidificato","unsorted":"Non ordinare questa colonna","singleSort":"Ordinamento singolo","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/ja/EnhancedGrid.js b/dojox/grid/enhanced/nls/ja/EnhancedGrid.js
new file mode 100644
index 0000000..1bfb970
--- /dev/null
+++ b/dojox/grid/enhanced/nls/ja/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"降順","ascending":"昇順","nestedSort":"ネストされたソート","unsorted":"この列はソートしないでください","singleSort":"単一ソート","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/ko/EnhancedGrid.js b/dojox/grid/enhanced/nls/ko/EnhancedGrid.js
new file mode 100644
index 0000000..4a5a694
--- /dev/null
+++ b/dojox/grid/enhanced/nls/ko/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"내림차순","ascending":"오름차순","nestedSort":"중첩 정렬","unsorted":"이 열을 정렬하지 않음","singleSort":"단일 정렬","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/pl/EnhancedGrid.js b/dojox/grid/enhanced/nls/pl/EnhancedGrid.js
new file mode 100644
index 0000000..fd81206
--- /dev/null
+++ b/dojox/grid/enhanced/nls/pl/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Malejąco","ascending":"Rosnąco","nestedSort":"Sortowanie zagnieżdżone","unsorted":"Nie sortuj tej kolumny","singleSort":"Sortowanie pojedyncze","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/pt/EnhancedGrid.js b/dojox/grid/enhanced/nls/pt/EnhancedGrid.js
new file mode 100644
index 0000000..bdd7cac
--- /dev/null
+++ b/dojox/grid/enhanced/nls/pt/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"Descendente","ascending":"Ascendente","nestedSort":"Classificação Aninhada","unsorted":"Não classificar esta coluna","singleSort":"Classificação Única","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/ru/EnhancedGrid.js b/dojox/grid/enhanced/nls/ru/EnhancedGrid.js
new file mode 100644
index 0000000..b1560b6
--- /dev/null
+++ b/dojox/grid/enhanced/nls/ru/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"По убыванию","ascending":"По возрастанию","nestedSort":"Вложенная сортировка","unsorted":"Не сортировать этот столбец","singleSort":"Однократная сортировка","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/zh-tw/EnhancedGrid.js b/dojox/grid/enhanced/nls/zh-tw/EnhancedGrid.js
new file mode 100644
index 0000000..3d42c88
--- /dev/null
+++ b/dojox/grid/enhanced/nls/zh-tw/EnhancedGrid.js
@@ -0,0 +1 @@
+({"descending":"遞減","ascending":"遞增","nestedSort":"巢狀排序","unsorted":"不排序此直欄","singleSort":"單一排序","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/enhanced/nls/zh/EnhancedGrid.js b/dojox/grid/enhanced/nls/zh/EnhancedGrid.js
index a0eec70..06ac7a4 100644
--- a/dojox/grid/enhanced/nls/zh/EnhancedGrid.js
+++ b/dojox/grid/enhanced/nls/zh/EnhancedGrid.js
@@ -1 +1 @@
-({"descending":"降序","ascending":"升序","nestedSort":"嵌套排序","unsorted":"取消排序","singleSort":"简单排序","sortingState":"${0} - ${1}"})
\ No newline at end of file
+({"descending":"降序","ascending":"升序","nestedSort":"嵌套排序","unsorted":"不要对此列排序","singleSort":"单一排序","sortingState":"${0} - ${1}"})
\ No newline at end of file
diff --git a/dojox/grid/nls/DataGrid_nb.js b/dojox/grid/nls/DataGrid_nb.js
new file mode 100644
index 0000000..b838bd7
--- /dev/null
+++ b/dojox/grid/nls/DataGrid_nb.js
@@ -0,0 +1 @@
+dojo.provide("dojox.grid.nls.DataGrid_nb");dojo.provide("dijit.nls.loading");dijit.nls.loading._built=true;dojo.provide("dijit.nls.loading.nb");dijit.nls.loading.nb={"loadingState":"Laster inn...","errorState":"Det oppsto en feil"};
diff --git a/dojox/grid/nls/DataGrid_no.js b/dojox/grid/nls/DataGrid_no.js
deleted file mode 100644
index ff42bdc..0000000
--- a/dojox/grid/nls/DataGrid_no.js
+++ /dev/null
@@ -1 +0,0 @@
-dojo.provide("dojox.grid.nls.DataGrid_no");dojo.provide("dijit.nls.loading");dijit.nls.loading._built=true;dojo.provide("dijit.nls.loading.no");dijit.nls.loading.no={"loadingState":"Loading...","errorState":"Sorry, an error occurred"};
diff --git a/dojox/io/proxy/tests/frag.xml b/dojox/io/proxy/tests/frag.xml
deleted file mode 100644
index 6904bba..0000000
--- a/dojox/io/proxy/tests/frag.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<response>
-<foo>This is the foo text node value</foo>
-<bar>This is the bar text node value</bar>
-</response>
diff --git a/dojox/io/proxy/tests/xip.html b/dojox/io/proxy/tests/xip.html
deleted file mode 100644
index 5a5ba5f..0000000
--- a/dojox/io/proxy/tests/xip.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-        "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-	<title>XHR IFrame Proxy Tests</title>
-	<style type="text/css">
-		@import "../../../../dojo/resources/dojo.css";
-		@import "../../../../dijit/themes/tundra/tundra.css";
-		@import "../../../../dijit/themes/dijit.css";
-	</style>
-
-	<script type="text/javascript" src="../../../../dojo/dojo.js"
-		djConfig="isDebug:true"></script>
-	<script type="text/javascript" src="../xip.js"></script>
-	<script type="text/javascript">
-		dojo.require("dojox.io.proxy.xip");
-
-		function testXmlGet(){
-/*
-			//Normal xhrGet call.
-			dojo.xhrGet({
-				url: "frag.xml",
-				handleAs: "xml",
-				load: function(result, ioArgs){
-					var foo = result.getElementsByTagName("foo").item(0);
-
-					dojo.byId("xmlGetOut").innerHTML = "Success: First foobar value is: " + foo.firstChild.nodeValue;
-				}
-			});
-*/
-
-			//xip xhrGet call.
-			dojo.xhrGet({
-				iframeProxyUrl: "../xip_server.html",
-				url: "tests/frag.xml",
-				handleAs: "xml",
-				load: function(result, ioArgs){
-					var foo = result.getElementsByTagName("foo").item(0);
-
-					dojo.byId("xmlGetOut").innerHTML = "Success: First foobar value is: " + foo.firstChild.nodeValue;
-				}
-			});
-
-		}
-
-		dojo.addOnLoad(function(){
-
-		});
-	</script>
-</head>
-<body class="tundra">
-
-<h1>XHR IFrame Proxy Tests</h1>
-<p>Run this test from a web server, not from local disk.</p>
-
-<p>
-<button onclick="testXmlGet()">Test XML GET</button>
-</p>
-<div id="xmlGetOut"></div>
-
-</body>
-</html>
diff --git a/dojox/resources/explore.php b/dojox/resources/explore.php
deleted file mode 100644
index 0644832..0000000
--- a/dojox/resources/explore.php
+++ /dev/null
@@ -1,149 +0,0 @@
-<?php // IF you don't have PHP5 installed, you can't use this index! ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-	"http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-
-	<link rel="stylesheet" href="../../dijit/tests/css/dijitTests.css">
-	<link rel="stylesheet" href="../../dijit/themes/tundra/tundra.css">
-	<link rel="stylesheet" href="../../dojox/widget/Dialog/Dialog.css">
-	<style type="text/css">
-		.innard {
-			padding:12px;
-			margin-top:0;
-		}
-	</style>
-	<title>Dojo Toolkit - DojoX Demos and Tests by Project</title>
-
-	<script src="../../dojo/dojo.js"></script>
-	<script type="text/javascript">
-		dojo.require('dojox.widget.Dialog');
-		dojo.require("dojo.fx.easing");
-		dojo.addOnLoad(function(){
-			var dialog = new dojox.widget.Dialog({ title: "About", viewportPadding:100, fixedSize:true });
-			dialog.startup();
-			dojo.query("span.projectname + a")
-				.connect("onclick",function(e){
-					e.preventDefault();
-					dojo.xhrGet({
-						url: e.target.href,
-						load: function(data){
-							var content = data.replace(/\</g,"<");
-							dialog.show();
-							dialog.setContent("<pre class='innard'>" + content + "</pre>");
-						}
-					})
-				})
-			;
-		});
-	</script>
-
-</head>
-<body>
-
-	<h1 class="testTitle">DojoX test files overview</h1>
-	
-	<table id="testMatrix">
-		<thead>
-			<tr class="top"><th rowspan="2">Test</th><th colspan="4">Tundra</th><th colspan="4">Nihilo</th><th colspan="4">Soria</th></tr>
-			<tr class="tests"><th>Normal</th><th>a11y</th><th>rtl</th><th>a11y + rtl<th>Normal</th><th>a11y</th><th>rtl</th><th>a11y + rtl<th>Normal</th><th>a11y</th><th>rtl</th><th>a11y + rtl</tr>
-		</thead>
-		<tbody><?php
-
-			foreach(getprojects() as $project){
-				$note = "";
-				if($project['readme']){
-					$note = "<a class='readmeLink' href='".$project['readme']."'>about</a>"; 
-				}
-				if($project['tests'] || $project['demos']){
-					print "<tr class='spacer'><td colspan='13'><span class='projectname'>dojox.". $project['name'] . "</span> ".$note."</td></tr>";
-
-					if($project['tests']){
-						printLinks($project['tests']);					
-					}
-					if($project['demos']){
-						printLinks($project['demos']);
-					}
-
-				}
-				
-			}
-		//	printLinks("./tree","Dijit Tree Tests");
-			
-		?>
-		</tbody>
-	</table>
-
-	<p>* note: All themes and modes included for completeness. Some projects don't even use themes. The "basic" link
-		is the direct link to the file with no enhancements. The test file must include _testCommon from dijit to
-		include theme / rtl / a11y testing capabilities.</p>
-</body>
-</html>
-<?php
-
-function getprojects(){
-	$projects = array();
-	$path = "../../dojox";
-	$handle = opendir($path);
-	while(false !== ($file = readdir($handle))){
-		$README = "";
-		$full = $path."/".$file;
-		if(is_dir($full)){
-			if(file_exists($full."/README")){
-				$README = $full."/README";
-			}
-			$tests = false; $demos = false;
-			if(is_dir($full."/tests")){
-				$tests = $full."/tests";
-			}
-			if(is_dir($full."/demos")){
-				$demos = $full."/demos";
-			}
-			$projects[] = array(
-				"name" => $file,
-				"tests" => $tests,
-				"demos" => $demos,
-				"readme" => $README
-			);
-		}
-	}
-	return $projects;
-}
-
-function printLinks($path){
-	$handle = opendir($path);
-	$i = 0;
-
-	while(false !== ($file = readdir($handle))){
-		if(preg_match("/([a-zA-Z])(.*)\.html/", $file, $matches)){
-			$base = $matches[0];
-			$link = $path."/".$matches[0];
-			print 
-			"<tr class='testRow ". (++$i % 2 ==0 ? "alt" : "")   ."'>" .
-
-				"<td class='label'>" . $base . "</td>" .
-
-			    // standard / tundra:
-				"<td><a href='".$link."'>basic</a></td>" .
-				"<td><a href='".$link."?a11y=true'>a11y</a></td>" .
-				"<td><a href='".$link."?dir=rtl'>rtl</a></td>" .
-				"<td><a href='".$link."?dir=rtl&a11y=true'>both</a></td>" .
-				
-				// nihilo
-				"<td><a href='".$link."?theme=nihilo'>nihilo</a></td>" .
-				"<td><a href='".$link."?theme=nihilo&a11y=true'>a11y</a></td>" .
-				"<td><a href='".$link."?theme=nihilo&dir=rtl'>rtl</a></td>" .
-				"<td><a href='".$link."?theme=nihilo&dir=rtl&a11y=true'>combo</a></td>" .
-
-				// soria
-				"<td><a href='".$link."?theme=soria'>soria</a></td>" .
-				"<td><a href='".$link."?theme=soria&a11y=true'>a11y</a></td>" .
-				"<td><a href='".$link."?theme=soria&dir=rtl'>rtl</a></td>" .
-				"<td><a href='".$link."?theme=soria&dir=rtl&a11y=true'>combo</a></td>" .
-									
-			 "</tr>";
-		}
-	}
-}
-
-?>
diff --git a/dojox/widget/ColorPicker.js b/dojox/widget/ColorPicker.js
index f4c13f7..fafca74 100644
--- a/dojox/widget/ColorPicker.js
+++ b/dojox/widget/ColorPicker.js
@@ -9,7 +9,7 @@ if(!dojo._hasResource["dojox.widget.ColorPicker"]){
 dojo._hasResource["dojox.widget.ColorPicker"]=true;
 dojo.provide("dojox.widget.ColorPicker");
 dojo.experimental("dojox.widget.ColorPicker");
-dojo.requireLocalization("dojox.widget","ColorPicker",null,"ROOT,th");
+dojo.requireLocalization("dojox.widget","ColorPicker",null,"ROOT,cs,de,es,fr,hu,it,ja,ko,pl,pt,ru,th,zh,zh-tw");
 dojo.requireLocalization("dojo.cldr","number",null,"ROOT,ar,ca,cs,da,de,de-de,el,en,en-au,en-gb,en-us,es,es-es,fi,fr,he,hu,it,ja,ja-jp,ko,ko-kr,nb,nl,pl,pt,pt-pt,ru,sk,sl,sv,th,tr,zh,zh-cn,zh-tw");
 dojo.require("dijit.form._FormWidget");
 dojo.require("dojo.dnd.move");
diff --git a/dojox/widget/nls/cs/ColorPicker.js b/dojox/widget/nls/cs/ColorPicker.js
new file mode 100644
index 0000000..6707c44
--- /dev/null
+++ b/dojox/widget/nls/cs/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"č","valueLabel":"j","hexLabel":"hex","hueLabel":"o","saturationLabel":"n","greenLabel":"z","blueLabel":"m","degLabel":"°"})
\ No newline at end of file
diff --git a/dojox/widget/nls/de/ColorPicker.js b/dojox/widget/nls/de/ColorPicker.js
new file mode 100644
index 0000000..480e3d8
--- /dev/null
+++ b/dojox/widget/nls/de/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"r","valueLabel":"v","hexLabel":"hex","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/es/ColorPicker.js b/dojox/widget/nls/es/ColorPicker.js
new file mode 100644
index 0000000..480e3d8
--- /dev/null
+++ b/dojox/widget/nls/es/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"r","valueLabel":"v","hexLabel":"hex","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/fr/ColorPicker.js b/dojox/widget/nls/fr/ColorPicker.js
new file mode 100644
index 0000000..d8524b9
--- /dev/null
+++ b/dojox/widget/nls/fr/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"r","valueLabel":"v","hexLabel":"hex","hueLabel":"t","saturationLabel":"s","greenLabel":"v","blueLabel":"b","degLabel":"°"})
\ No newline at end of file
diff --git a/dojox/widget/nls/hu/ColorPicker.js b/dojox/widget/nls/hu/ColorPicker.js
new file mode 100644
index 0000000..480e3d8
--- /dev/null
+++ b/dojox/widget/nls/hu/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"r","valueLabel":"v","hexLabel":"hex","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/it/ColorPicker.js b/dojox/widget/nls/it/ColorPicker.js
new file mode 100644
index 0000000..d8524b9
--- /dev/null
+++ b/dojox/widget/nls/it/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"r","valueLabel":"v","hexLabel":"hex","hueLabel":"t","saturationLabel":"s","greenLabel":"v","blueLabel":"b","degLabel":"°"})
\ No newline at end of file
diff --git a/dojox/widget/nls/ja/ColorPicker.js b/dojox/widget/nls/ja/ColorPicker.js
new file mode 100644
index 0000000..5cbbfd9
--- /dev/null
+++ b/dojox/widget/nls/ja/ColorPicker.js
@@ -0,0 +1 @@
+({"hexLabel":"16 進","redLabel":"r","valueLabel":"v","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/ko/ColorPicker.js b/dojox/widget/nls/ko/ColorPicker.js
new file mode 100644
index 0000000..7f98cb7
--- /dev/null
+++ b/dojox/widget/nls/ko/ColorPicker.js
@@ -0,0 +1 @@
+({"hexLabel":"16진","redLabel":"r","valueLabel":"v","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/pl/ColorPicker.js b/dojox/widget/nls/pl/ColorPicker.js
new file mode 100644
index 0000000..51b1800
--- /dev/null
+++ b/dojox/widget/nls/pl/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"c","valueLabel":"jas.","hexLabel":"szesnastkowe","hueLabel":"barwa","saturationLabel":"nas.","greenLabel":"z","blueLabel":"n","degLabel":"°"})
\ No newline at end of file
diff --git a/dojox/widget/nls/pt/ColorPicker.js b/dojox/widget/nls/pt/ColorPicker.js
new file mode 100644
index 0000000..480e3d8
--- /dev/null
+++ b/dojox/widget/nls/pt/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"r","valueLabel":"v","hexLabel":"hex","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/ru/ColorPicker.js b/dojox/widget/nls/ru/ColorPicker.js
new file mode 100644
index 0000000..c19586a
--- /dev/null
+++ b/dojox/widget/nls/ru/ColorPicker.js
@@ -0,0 +1 @@
+({"redLabel":"к","valueLabel":"з","hexLabel":"шест","hueLabel":"о","saturationLabel":"н","greenLabel":"з","blueLabel":"с","degLabel":"°"})
\ No newline at end of file
diff --git a/dojox/widget/nls/zh-tw/ColorPicker.js b/dojox/widget/nls/zh-tw/ColorPicker.js
new file mode 100644
index 0000000..2941074
--- /dev/null
+++ b/dojox/widget/nls/zh-tw/ColorPicker.js
@@ -0,0 +1 @@
+({"hexLabel":"十六進位","redLabel":"r","valueLabel":"v","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file
diff --git a/dojox/widget/nls/zh/ColorPicker.js b/dojox/widget/nls/zh/ColorPicker.js
new file mode 100644
index 0000000..4f195c2
--- /dev/null
+++ b/dojox/widget/nls/zh/ColorPicker.js
@@ -0,0 +1 @@
+({"hexLabel":"十六进制","redLabel":"r","valueLabel":"v","hueLabel":"h","saturationLabel":"s","degLabel":"°","greenLabel":"g","blueLabel":"b"})
\ No newline at end of file

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/dojo.git



More information about the Pkg-javascript-commits mailing list